| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/07/2009 12:50:42
|
VantuilJose
JavaChild
![[Avatar]](/images/avatar/ca5b658462069fbcf6db37967b8c9cec.jpg)
Membro desde: 15/09/2008 11:47:53
Mensagens: 101
Offline
|
Preciso de ajuda!!!
Estou desenvolvendo um projeto onde usarei imagens de cartões de respostas de processos seletivos utilizando Java.
Preciso pegar a imagem e através de acesso por coordenadas , ou outro método, ver quais questões estão marcadas.
Alguém poderia me dizer o que devo usar? Apenas a API do Java 2D é suficiente? Exixtem outras bibliotecas? Quais? Onde as consigo? Quais as funcionalidades que elas oferecem?
Se alguém puder me ajudar fico grato!
|
Vantuil Oliveira
Tecnólogo em Análise e Desenvolvimento de Sistemas - IFMG Bambuí
Mestrando em Ciência da Computação - UFOP
-
"I am the maniac serial killer that knows where you live who will maintain your code!" |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/07/2009 13:02:43
|
luistiagos
GUJ Expert
![[Avatar]](/images/avatar/98785ca89cfbbe933921bfe68a94553b.jpg)
Membro desde: 10/07/2006 10:37:23
Mensagens: 3159
Online
|
Como funciona este seu projeto?
|
SCJP 1.5
SCJA 1.0
IBM DB2 Associate |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/07/2009 13:27:55
|
VantuilJose
JavaChild
![[Avatar]](/images/avatar/ca5b658462069fbcf6db37967b8c9cec.jpg)
Membro desde: 15/09/2008 11:47:53
Mensagens: 101
Offline
|
Bom, é o seguinte:
A ideía e substituir leitoras ópticas que são muito caras e nada flexíveis por imagems provenientes de um Scanner, os únicos requisitos é que seja desenvolvido em Java.
As imagens serão escaneadas dos gabaritos que serão marcados, por exemplo, no vestibular. Tenho que analisar a imagem e saber quais questões estão certas e quais estão erradas. Vale reassaltar:
Todos os gabaritos são iguais;
O gabarito é vermelho e deve ser marcado com preto ou azul;
Posso usar qualque técnica de processamento de imagens;
No início da linha de cada questão existe um clock, um retângulo preto que indica que ali começa uma linha.
A ideía inicial é tratar a imagem como uma matriz, mas nem isso eu sei como fazer, tem pouquíssimo material disponível na internet acerca do assunto.
Tenho que saber se o Java me oferece recurso (fácil) pra que eu faça isso, ou se é necessário que eu utilize outras bibliotecas.
Se tiver mais alguma dúvida, sinta-se a vontade para perguntar.
|
Vantuil Oliveira
Tecnólogo em Análise e Desenvolvimento de Sistemas - IFMG Bambuí
Mestrando em Ciência da Computação - UFOP
-
"I am the maniac serial killer that knows where you live who will maintain your code!" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/07/2009 13:31:55
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
O que você quer explicar é isto aqui, não?
http://en.wikipedia.org/wiki/Optical_mark_recognition
Aí fica bem mais fácil achar uma biblioteca que faça isso por você (procure por "OMR" ou "Optical mark recognition" e "Java").
This message was edited 1 time. Last update was at 03/07/2009 13:32:38
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/07/2009 13:38:32
|
VantuilJose
JavaChild
![[Avatar]](/images/avatar/ca5b658462069fbcf6db37967b8c9cec.jpg)
Membro desde: 15/09/2008 11:47:53
Mensagens: 101
Offline
|
É exatamente isso!
O gabarito que vou trabalhar inicialmente é pouquinho diferente, mas a idéia é essa.
Vou dar uma pesquisada no temas que me falou, mas já antecipando, o que essas biblioteca podem fazer por mim?
|
Vantuil Oliveira
Tecnólogo em Análise e Desenvolvimento de Sistemas - IFMG Bambuí
Mestrando em Ciência da Computação - UFOP
-
"I am the maniac serial killer that knows where you live who will maintain your code!" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/10/2009 17:47:26
|
nasper1904
Debugger
![[Avatar]](/images/avatar/294a8ed24b1ad22ec2e7efea049b8737.jpg)
Membro desde: 17/03/2005 20:38:18
Mensagens: 69
Offline
|
Olá VantuilJose,
Estou passando pela mesma situação que você.
Gostaria de saber se até então você conseguiu encontrar alguma biblioteca java para OMR?
obrigado desde ja ! !
A paz do Senhor à todos!
|
As pessoas boas devem amar seus inimigos. (chaves)
"Deus amou o mundo de tal maneira que deu seu filho unigênito para que todo aquele que nele crer não pereça, mas tenha a vida eterna" (Jo 3:16) |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/10/2009 18:04:43
|
entanglement
GUJ Hacker
Membro desde: 26/09/2009 09:18:56
Mensagens: 5748
Offline
|
-
This message was edited 1 time. Last update was at 23/10/2009 18:06:19
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/10/2009 07:43:48
|
VantuilJose
JavaChild
![[Avatar]](/images/avatar/ca5b658462069fbcf6db37967b8c9cec.jpg)
Membro desde: 15/09/2008 11:47:53
Mensagens: 101
Offline
|
Pois é, até tem alguma coisa, mais sem documentação e especificação nenhuma...
Alguns me aconselharam uma biblioteca chamada JIU, e outra JAI, mas não gostei muito também não, minha idéia é fazer tudo a mão mesmo, percorrer a imagem pixel a pixel, a procura de imagens significativas, como retângulos e círculos, e compará-los com o gabarito certo.
Por enquanto estou parado, pois preciso de um material do meu professor, e ele está me enrolando um pouquinho.
Me envia uma MP com seu e-mail, talvez possamos trocar algumas idéias, e quem sabe até uma parceria para desenvolvimento?
Me fala também sobre as especificações do seu projeto, para que possamos compará-las, e quem sabe agregar mais valor para os nossos trabalhos.
Aguardo Resposta.
[]'s
|
Vantuil Oliveira
Tecnólogo em Análise e Desenvolvimento de Sistemas - IFMG Bambuí
Mestrando em Ciência da Computação - UFOP
-
"I am the maniac serial killer that knows where you live who will maintain your code!" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/10/2009 07:58:46
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20576
Localização: Curitiba/PR
Online
|
Acho que só o Java 2D é suficiente. Até pq, só o java 2d é bastante coisa. Dá uma olhada nesses artigos:
http://javaboutique.internet.com/tutorials/rasters/
http://javaboutique.internet.com/tutorials/rasters2/
Outra coisa, o processo de scaneamento em si vai ser controlado por sua aplicação?
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/10/2009 08:08:45
|
VantuilJose
JavaChild
![[Avatar]](/images/avatar/ca5b658462069fbcf6db37967b8c9cec.jpg)
Membro desde: 15/09/2008 11:47:53
Mensagens: 101
Offline
|
Gostei dos links.
A princípio não, o usuário terá a opção de inserir as imagens no sistemas. Ele vai colocar também um gabarito com todas as opções marcada, essa vai ser a parte mais difícil pra mim, pois vou ter que rastrear a imagem e criar o gabarito a partir daí, depois tenho que exportar esses dados na forma código do candidato, número da questão e opção marcada, portanto não será responsabilidade do meu sistema quantificar esses dados, e/ou dar informações estatísticas.
Deu pra entender mais ou menos? Se tiverem alguma dúvida, me perguntem, pois estou precisando bastante de ajuda!!!
Alguém já viu falar sobre as bibliotecas JAI(Java Advanced Image) e JIU(Java Image Utilities)?
Vou dar uma estudada melhor na Java2D e ver o que pode fazer por mim e depois posto os resultados...
|
Vantuil Oliveira
Tecnólogo em Análise e Desenvolvimento de Sistemas - IFMG Bambuí
Mestrando em Ciência da Computação - UFOP
-
"I am the maniac serial killer that knows where you live who will maintain your code!" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/10/2009 08:13:38
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20576
Localização: Curitiba/PR
Online
|
Eu já dei uma olhada na JAI, mas nunca me convenceram que é melhor usa-la, do que usar o Java 2D diretamente. Faziam algumas propagandas da performance da JAI, mas nunca observei um ganho significativo, principalmente depois da versão 5 do Java, que permitiu aceleração de hardware para as imagens translucentes.
Também implementaram alguns filtros, mas também existem ótimos filtros feitos por terceiros para o Java 2D, como esses aqui:
http://www.jhlabs.com/ip/filters/index.html
Essa outra biblioteca eu não conheço.
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/10/2009 08:20:20
|
VantuilJose
JavaChild
![[Avatar]](/images/avatar/ca5b658462069fbcf6db37967b8c9cec.jpg)
Membro desde: 15/09/2008 11:47:53
Mensagens: 101
Offline
|
ViniGodoy, você sabe de algum livro ou apostila, não importa o idioma, que tratem deste assunto? Tenho pouco material de referência, e queria adquirir mais, existem alguns livros de processamento de imagem, mas não encontrei sequer um que trate sobre Java e processamento de imagem. Se não tiver material bibliográfico mesmo, como livros, artigos e apostilas, sabe de alguns sites dos quais posso conseguir informações consistente sobre o assunto? O Google sempre funciona, mas prefiro indicações mais concretas!
This message was edited 1 time. Last update was at 26/10/2009 08:35:24
|
Vantuil Oliveira
Tecnólogo em Análise e Desenvolvimento de Sistemas - IFMG Bambuí
Mestrando em Ciência da Computação - UFOP
-
"I am the maniac serial killer that knows where you live who will maintain your code!" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/10/2009 10:28:32
|
nasper1904
Debugger
![[Avatar]](/images/avatar/294a8ed24b1ad22ec2e7efea049b8737.jpg)
Membro desde: 17/03/2005 20:38:18
Mensagens: 69
Offline
|
Olá, VantuilJose.
O projeto que estou querendo desenvolver é para leitura de cartões de vestibular.
Funcionalidades
- A mais importante é detectar zonas marcadas (OMR) e desmarcadas.
- Leitura de código de barras.
- girar o documento automaticamente, caso tenha sido digitalizado de cabeça para baixo ou com qualquer ângulo fora do padrão.
- Remover automaticamente as bordas, limitando a imagem ao tamanho do documento.
- Digitalizar em preto e branco (Esta na verdade é uma configuração do scanner, Fujitsu fi-6130);
Na verdade, a empresa em que trabalho (Universidade), ia comprar um software que faz exatamente isso.
É o Kofax Express ou Ascent Capture (feito em VB), ele possui recursos muito interessantes para digitalização e leitura de dados em documentos, como OMR, ICR e OCR.
Desistimos de comprá-lo por conta do alto preço.
Então meu chefe me deu a missão de encontrar outro software similar, porém estou mais interessado em desenvolver um usando Java, pois seria mais flexível para adaptá-lo aos outros sistemas que estamos fazendo.
Por enquanto já desenvolvi um sistema em Java que faz a digitalização usando o scanner fi-6130 através da api JTwain. O próximo passo seria fazer o tratamento da imagem e a leitura dos dados (OMR).
|
As pessoas boas devem amar seus inimigos. (chaves)
"Deus amou o mundo de tal maneira que deu seu filho unigênito para que todo aquele que nele crer não pereça, mas tenha a vida eterna" (Jo 3:16) |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/10/2009 10:55:44
|
juliocbq
GUJ Expert
![[Avatar]](/images/avatar/153704bb24a28e9a6bb49e8ffde1492e.jpg)
Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Online
|
Somente a Morfologia das imagens ae não vai resolver. Vai precisar de um algoritmo de segmentação e uma rede neural para reconhecer o padrão. Pode usar uma rede Kohonen. Um algoritmo para normalizar os dados e passar para rede k, pois os dados devem estar em um intervalo de -1(off) a 1(on). Detalhe, para treinar redes neurais, não compensa usar amostras de mais de 256^2 pixel. Levaria muito tempo para treinar, e a rede podem nem convergir a margem de erro. Vai precisar criar uma representação menor da imagem, ou usar a técnica de sensores.
This message was edited 1 time. Last update was at 27/10/2009 10:59:13
|
www.citrox.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/01/2010 12:21:21
|
VantuilJose
JavaChild
![[Avatar]](/images/avatar/ca5b658462069fbcf6db37967b8c9cec.jpg)
Membro desde: 15/09/2008 11:47:53
Mensagens: 101
Offline
|
Demorei um tempão pra postar... mas...
juliocbq, como funcionaria essa rede neural? Existe implementação em Java? Que bilbiografia você me sugere?
E vc nasper1904? conseguiu alguma coisa? Desenvolveu alguma parte? E quanto ao sistema que pega do Scanner, funcionar com qualquer Scanner? ou tem que ser especificamente com ele?
|
Vantuil Oliveira
Tecnólogo em Análise e Desenvolvimento de Sistemas - IFMG Bambuí
Mestrando em Ciência da Computação - UFOP
-
"I am the maniac serial killer that knows where you live who will maintain your code!" |
|
|
 |
|
|