Selecao DevMedia QUERO SER PRIME

Fórum Leitura Cartão Mega Sena e/ou vestibular #333959

30/11/2006

0

Ola a Todos, Tenho +1 uma dúvida.

Estou fazendo um programa que leia uma imagem escaneada padrão e identifique o numero e a letra. Como um cartão da mega-sena ou uma prova de vestibular, que temos que colorir todo o quadrado para que seja feita a leitura.

Minha idéia é escanear a imagem, (salvar ela em formato jpg, ou bmp) e abrir ela no programa, e através de coordenadas o programa identifica qual a letra foi marcada da questão.

Ex:

1 - [b:cff83508d2]■[/b:cff83508d2] - b - c - d
2 - a - b - c - [b:cff83508d2]&9632;[/b:cff83508d2]

Questão 1 - resposta A
Questão 2 - resposta D

E assim por diante.


Vagner.oliveira

Vagner.oliveira

Responder

Posts

30/11/2006

Rinez

Também estou interessado neste tópico.
Vamos aguardar quem tenha sugestão para nos ajudar.
Prof. Zenir


Responder

Gostei + 0

30/11/2006

Vagner.oliveira

Também estou interessado neste tópico. Vamos aguardar quem tenha sugestão para nos ajudar. Prof. Zenir


Em vez de esperarmos, poderíamos nos ajudar...

Estava pensando em como fazer com que o Delphi localize e identifique através de coordenadas as cores, para que possa ser feita a verificação.

Acho que ja é o primeiro passo. :lol:


Responder

Gostei + 0

04/12/2006

Vagner.oliveira

:arrow: up


Responder

Gostei + 0

20/12/2006

Vagner.oliveira

:arrow: up

Ninguem tem idéia de como iniciar este procedimento :?: :shock:


Responder

Gostei + 0

02/01/2007

Vagner.oliveira

up :roll:


Responder

Gostei + 0

02/01/2007

Aroldo Zanela

Colega,

Sem querer jogar um balde de água fria no seu projeto, acredito que isso será ´bem complicado´ de se implementar. Atualmente, estou trabalhando num centro educacional que possui máquinas (leitoras) de correção) de provas que custaram em torno de R$ 30 mil cada uma. Mesmo com essas ´máquinas´, é necessário criar uma máscara para cada prova e fazer refinadas calibrações para funcionar 100¬.

Boa sorte!


Responder

Gostei + 0

03/01/2007

Vagner.oliveira

Eu sei que exeste essas máquinas mesmo, e que custam bem caro :shock: ...

O que queria é pelo menos uma LUZ no fim do tunel, para que eu possa tentar começar algo, Aroldo você trabalha com essas máquinas, sabe como elas funcionam ?

Minha idéia é fazer com que o delphi lesse uma coordenada X,Y e verificasse se está com uma cor diferente. algo assim. pesquisei no forum mas não achei nada. Deve ser por isso que não tenho resposta a minha dúvida.

[b:d89f6be9c5][size=18:d89f6be9c5]Tem como o Delphi ler uma coordenada e a partir dae identificar a cor de uma imagem ?[/size:d89f6be9c5][/b:d89f6be9c5]


Responder

Gostei + 0

03/01/2007

Aroldo Zanela

Colega,

Estou aqui há alguns meses e não tnho domínio ainda sobre o assunto, mas pelo que meus colegas me disseram, ela funciona como um ´scanner´ mas gera arquivos .DAT do tipo texto contento os dados lidos, onde:

0 = Falso;
1 = Verdadeiro;
N = Nulo;
W = Branco;

Eu fiz um sistema para correção de provas que utiliza esses arquivos .DAT que funciona com base na comparação de um gabarito com as provas dos alunos (em Delphi), mas não é realizado nenhum tipo de tarefa com imagens.

Acredito que sua idéia seja de difícil implementação devido a velocidade que é necessário no ambiente de produção, bem como, o correto posicionamento do cartão será bem complicado.


Responder

Gostei + 0

03/01/2007

Emerson Nascimento

creio que deva seguir o mesmo princípio dos leitores biométricos: tanto facial, como leitor de íris ou de impressão digital. o princípio é o mesmo: é feita uma imagem pelo scanner e depois comparada com pontos de uma imagem previamente gravada.

no [url=http://sourceforge.net/search/?type_of_search=soft&words=biometric]sourceforge[/url] tem alguns exemplos que podem lhe ser úteis.


Responder

Gostei + 0

08/01/2007

Vagner.oliveira

Dei uma olhada, mas não me ajudou muito, estou verificando a possibilidade de ler um BITMAP e identificar as cores...

Alguém tem alguma idéia


Responder

Gostei + 0

08/01/2007

Guilherme_wl

Aproveitando o tópico do amigo, estou trabalhando num programa de correção de provas via leitora de gabaritos, ele trabalha assim:

O software da leitora ler o gabarito e gera um arquivo.dat c/ uma matricula e as alternativas do candidato. Eu to abrindo esse arquivo e separando a matricula das alternativas, gravando ele no banco de dados e em seguida comparando com a resposta verdadeira e mostrando o resultado num ListView. O que eu to precisando é que esse programa pinte a matricula do candidato automaticamente. Exemplo: eu tenho uma query que apartir da data me diz as pessoas e as matriculas referentes a cada uma delas, eu quero gerar no Rave algo que pinte automaticamente a matricula da pessoa no gabarito, só que não sei como fazer isso no Rave, alguem pode me ajudar??


Responder

Gostei + 0

08/01/2007

Thiago Vidal

cara, esse assunto é bastante interessante.

na verdade, o processo é relativamente simples, se vc tiver conhecimentos de DSP (Processamento Digital de Sinais). o gabarito da prova, normalmente é vermelho, com marcas de guia pretas, justamente para a facilidade da interpretação do resultado.

vou resumir os processos aqui, as equações vc encontra em sites sobre DSP.

1- Remova o canal vermelho, deixando apenas as guias pretas, e as respostas na imagem.

2- Com conhecimento da resolução do scanner, e das margens até as guias, calcule a quantidade de pixels das guias, por ex:

vc sabe que as margens esquerda e direita são de 1 pol, que a margem inferior é de 2 pol e as respostas começam a partir de 5 pol do topo da página. a uma resolução de 100 pixels/pol, vc sabe que as guias estao em (100x500) até (largura-100, altura-100) pixels desconte aí uns 10¬ de erro.

3- utilizando a propriedade Canvas.Pixels do seu TBitmap, vc varre as margens superiores, procurando as guias das respostas (A, B, C, D, E) (pontos pretos) existem equações de DSP que dada uma matriz de pontos, ou um retangulo, te retorne o centro. aqui, voce guarda as coordenadas X, de cada resposta.

4- novamente utilizando Canvas.Pixels, vc varre as margens laterais, para encotrar as guias com os numeros das questoes. tendo as coordenadas Y de cada questão, vc cruza com as coordenadas X, de cada resposta obtidas acima, (considerando um erro), e procura por pixels pretos, e aí vc consegue descobrir a resposta assinalada.

---

desculpa se ficou muito complcado, mas é que o assunto é complicado mesmo, se vc não tiver com muita pressa pra isso, me manda um email, que eu vejo se consigo escrever algunas rotinas que te ajudem com isso, no final de semana.


Responder

Gostei + 0

22/01/2007

Vagner.oliveira

Meu e-mail é: vagner_listas@yahoo.com.br

Se puder me dar um empurrão em frente a este desafio, agradeceria muito


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar