Virtualização / OCR

Automação por imagem e OCR (RapidOCR + OpenCV + MSS)

Capturar Região da Tela

virtualization.capture_region

Captura região específica (x, y, w, h)

Como usar

Captura uma região da tela (esquerda, topo, largura, altura em pixels) para um arquivo e/ou variável. Base para OCR e comparação de imagens em sistemas acessados por Citrix, RDP ou VNC, onde não há controles acessíveis.

Exemplo: Capture 100, 200, 600 × 80 em {faixa_total} para ler o total com OCR.

Campos

CampoTipoPadrãoDetalhes
EsquerdaNúmeroLargura/altura vazias = a tela inteira
TopoNúmeroLargura/altura vazias = a tela inteira
LarguraNúmeroLargura/altura vazias = a tela inteira
AlturaNúmeroLargura/altura vazias = a tela inteira
Salvar no arquivo (vazio = só na variável)Arquivo
Salvar resultado na variável *Variável de saídacapture

Resultado: guardado na variável capture (Qualquer).

OCR — Ler Texto

virtualization.ocr_read_text

Extrai texto de uma imagem/região (RapidOCR)

Como usar

Lê o texto de uma imagem (arquivo ou variável) com OCR local, sem internet. Devolve o texto inteiro ou as linhas com posição; ignore leituras abaixo da confiança mínima.

Exemplo: Leia o texto de C:\Robos\entrada\nota.png em {texto_nota}.

Campos

CampoTipoPadrãoDetalhes
Imagem *ArquivoUm arquivo, ou uma variável com imagem ({imagem})
RetornarOpçãoTexto (uma linha por linha lida)Opções: Texto (uma linha por linha lida), Linhas com confiança e posição
Salvar resultado na variável *Variável de saídaocr_text
+ Avançado (1)
CampoTipoPadrãoDetalhes
Confiança mínimaNúmero50 %

Resultado: guardado na variável ocr_text (Qualquer).

OCR — Ler Região

virtualization.ocr_read_region

Lê texto de uma região específica da tela

Como usar

Captura uma região da tela e lê o texto dela com OCR, num só comando.

Exemplo: Leia a região 850, 120, 300 × 40 (onde aparece o protocolo) em {protocolo}.

Campos

CampoTipoPadrãoDetalhes
Esquerda *Número
Topo *Número
Largura *Número
Altura *Número
RetornarOpçãoTexto (uma linha por linha lida)Opções: Texto (uma linha por linha lida), Linhas com confiança e posição
Salvar resultado na variável *Variável de saídaocr_text
+ Avançado (1)
CampoTipoPadrãoDetalhes
Confiança mínimaNúmero50 %

Resultado: guardado na variável ocr_text (Qualquer).

Buscar Texto na Tela

virtualization.find_text

Localiza coordenadas de um texto na tela

Como usar

Procura um texto na tela (ou numa região) por OCR e guarda a posição encontrada, com centro em x e y. Por padrão ignora maiúsculas e acentos; escolha a ocorrência quando o texto aparecer mais de uma vez.

Exemplo: Encontre "Emitir Nota" na tela e guarde em {posicao_botao}.

Campos

CampoTipoPadrãoDetalhes
Texto *Texto
Salvar resultado na variável *Variável de saídatext_position{x, y, width, height, center_x, center_y, confidence} ou vazio (None) se não achar
+ Avançado (7)
CampoTipoPadrãoDetalhes
Texto exato (a linha inteira)Sim/NãoNão
Ignorar maiúsculas e acentosSim/NãoSim
Ocorrência (1 = a primeira)Número1
Região: esquerdaNúmeroVazio = a tela inteira
Região: topoNúmeroVazio = a tela inteira
Região: larguraNúmeroVazio = a tela inteira
Região: alturaNúmeroVazio = a tela inteira

Resultado: guardado na variável text_position (Dicionário).

Clicar no Texto

virtualization.click_text

Clica na posição onde o texto foi encontrado

Como usar

Encontra o texto na tela por OCR e clica nele, esperando até o tempo limite. Use o deslocamento para clicar ao lado do texto, como num campo à direita do rótulo.

Exemplo: Clique no texto "Confirmar" do sistema acessado por Citrix.

Campos

CampoTipoPadrãoDetalhes
Texto *Texto
Botão do mouseOpçãoEsquerdoOpções: Esquerdo, Direito, Do meio
CliquesNúmero1
Tempo limite (0 = sem limite)Número10 s
+ Avançado (9)
CampoTipoPadrãoDetalhes
Deslocamento XNúmero0 px
Deslocamento YNúmero0 px
Texto exato (a linha inteira)Sim/NãoNão
Ignorar maiúsculas e acentosSim/NãoSim
Ocorrência (1 = a primeira)Número1
Região: esquerdaNúmeroVazio = a tela inteira
Região: topoNúmeroVazio = a tela inteira
Região: larguraNúmeroVazio = a tela inteira
Região: alturaNúmeroVazio = a tela inteira

Aguardar Texto

virtualization.wait_text

Espera texto aparecer na tela

Como usar

Espera um texto aparecer na tela, verificando por OCR, e pode guardar a posição. Com "Falhar o robô" desmarcado, segue mesmo se o tempo acabar.

Exemplo: Aguarde até 90 s o texto "Operação concluída" aparecer.

Campos

CampoTipoPadrãoDetalhes
Texto *Texto
Tempo limite (0 = sem limite)Número30 s
Salvar a posição na variávelVariável de saída
+ Avançado (7)
CampoTipoPadrãoDetalhes
Texto exato (a linha inteira)Sim/NãoNão
Ignorar maiúsculas e acentosSim/NãoSim
Falhar o robô se o tempo esgotarSim/NãoSim
Região: esquerdaNúmeroVazio = a tela inteira
Região: topoNúmeroVazio = a tela inteira
Região: larguraNúmeroVazio = a tela inteira
Região: alturaNúmeroVazio = a tela inteira

Resultado: guardado na variável escolhida (Dicionário).

Localizar Imagem

virtualization.image_match

Busca template de imagem na tela (OpenCV)

Como usar

Procura uma imagem de referência na tela (ou numa região) e guarda a posição. Pode esperar até ela aparecer.

Exemplo: Localize logo_erp.png, esperando até 30 s, para confirmar que o sistema abriu.

Campos

CampoTipoPadrãoDetalhes
Imagem a procurar *Arquivo
Semelhança mínimaNúmero80 %
Salvar resultado na variável *Variável de saídaimage_position{x, y, width, height, center_x, center_y, confidence} ou vazio (None) se não achar
+ Avançado (5)
CampoTipoPadrãoDetalhes
Esperar até (0 = olhar uma vez)Número0 s
Região: esquerdaNúmeroVazio = a tela inteira
Região: topoNúmeroVazio = a tela inteira
Região: larguraNúmeroVazio = a tela inteira
Região: alturaNúmeroVazio = a tela inteira

Resultado: guardado na variável image_position (Dicionário).

Clicar na Imagem

virtualization.click_image

Clica onde a imagem template foi encontrada

Como usar

Encontra a imagem de referência na tela e clica nela (com deslocamento opcional), esperando até o tempo limite.

Exemplo: Clique na imagem botao_imprimir.png na barra de ferramentas.

Campos

CampoTipoPadrãoDetalhes
Imagem a clicar *Arquivo
Semelhança mínimaNúmero80 %
Botão do mouseOpçãoEsquerdoOpções: Esquerdo, Direito, Do meio
CliquesNúmero1
Tempo limite (0 = sem limite)Número10 s
+ Avançado (6)
CampoTipoPadrãoDetalhes
Deslocamento XNúmero0 px
Deslocamento YNúmero0 px
Região: esquerdaNúmeroVazio = a tela inteira
Região: topoNúmeroVazio = a tela inteira
Região: larguraNúmeroVazio = a tela inteira
Região: alturaNúmeroVazio = a tela inteira

Comparar Imagens

virtualization.compare_images

Compara duas imagens (similaridade %)

Como usar

Compara duas imagens e guarda a semelhança em porcentagem. Útil para conferir se a tela mudou ou se um documento bate com o modelo.

Exemplo: Compare a captura atual com tela_esperada.png e siga só se {similarity} >= 95.

Campos

CampoTipoPadrãoDetalhes
Imagem *ArquivoUm arquivo, ou uma variável com imagem ({imagem})
Outra imagem *ArquivoUm arquivo, ou uma variável com imagem ({imagem})
Salvar resultado na variável *Variável de saídasimilarity0 a 100 (%); acima de ~95 é praticamente igual

Resultado: guardado na variável similarity (Número).

Preprocessar Imagem

virtualization.preprocess_image

Aplica filtros para melhorar OCR (grayscale, threshold)

Como usar

Prepara uma imagem para o OCR ler melhor: tons de cinza, preto e branco, ampliação, inversão de cores, remoção de ruído e realce de bordas. Use quando o OCR erra em textos pequenos ou fundos coloridos.

Exemplo: Amplie 2× e aplique preto e branco (otsu) na captura antes de ler o código com OCR.

Campos

CampoTipoPadrãoDetalhes
Imagem *ArquivoUm arquivo, ou uma variável com imagem ({imagem})
Tons de cinzaSim/NãoSim
Preto e brancoOpçãoNãoOpções: Não, Automático (Otsu), Adaptativo (luz irregular)
Ampliar (1 = original)Número1
Inverter cores (texto claro no escuro)Sim/NãoNão
Salvar resultado na variável *Variável de saídaprocessed_image
+ Avançado (3)
CampoTipoPadrãoDetalhes
Remover ruídoSim/NãoNão
Realçar bordasSim/NãoNão
Salvar no arquivo (vazio = só na variável)Arquivo

Resultado: guardado na variável processed_image (Qualquer).