Exite um meio de ler um texto de um programa na tela do desktop?

Salve lista, senhores e possível através do java eu fazer um aplicação que leia uma determinada are do desktop e me retorne o texto ! eu já vi isso feito em C# tem um programa que o mouse e como uma câmera ou você pode terminar uma área do desktop e o programa fica monitorando aquela are quando e executado um programa que chega ate a area determinada e apare um determinado texto ele dispara um email !!

Teria como fazer isso qual tecnologia usar ?
tem como ser feito no java ?
Alguem

Depende que tipo de informação você quer ler, de que tipo de aplicação ela vem, etc.

Por exemplo, aplicativos Win32 você pode ler o texto diretamente usando a API do Windows (exceto componentes owner-drawn). Dai você pode fazer isso em qualquer coisa que suporte chamar a API Win32, desde AutoHotkey, até C#, C++, Python, Java, Delphi, etc.

Já se é de uma imagem, de um feed de camera, ou de um programa que não atenda o que citei acima, da para usar técnicas de OCR. Vai depender de como é o texto também, por exemplo se o fundo varia muito, se o texto está claro, etc. Mas um jeito é com Python e OpenCV com Tesseract.

Sim.

1 curtida

entendi , poxa foi muito esclarecedor principalmente para min que nao tinha ideia de como ler dados de uma tela !

Achei um material muito bom sobre o tesseract mas e de 2013 sera que existe algo mais atual pois no material que estou vendo tenho que instalar um programa no windows mas eu queria usar no linux tambem !!!

Ai nesse tutorial cobre tudo:

Cobre até coisa demais dependendo do que você quer fazer. Por exemplo, se tu já sabe a posição do texto na tela, não precisa fazer detecção de texto na image, só usar um ROI fixo. Ali só não cobre tirar screenshot da tela.

Screenshot da tela:

1 curtida

bom de qualquer forma precisa usar o Tesseract !

estou vendo no maven que ele tem varias opções de api, no meu caso vou tirar um Screenshots da tela e depois ler ela qual seria a melhor opção ?