Como comparar uma impressão digital de um objeto

Oii gente,

to fazendo captura de digital atraves do leitor biometrico essas imagens ficam registradas no hd, ai precisa fazer a comparação delas e a leituras delas para ver se realmente é a digital da pessoa,

como faço isso de modo dinamico em tempo real tem algum algoritimo para isto em java ??

Moça, isso tá bem longe de ser Java Básico …

Pode ser básico se ela ler cuidadosamente o manual da biblioteca que ela deve estar usando para fazer o cadastramento das digitais

Como comparar uma impressão digital de um objeto

Como comparar uma impressão digital de um objeto
entanglement:

Pode ser básico se ela ler cuidadosamente o manual da biblioteca que ela deve estar usando para fazer o cadastramento das digitais

Como comparar uma impressão digital de um objeto

Mais nao fala nada sobre isso no manual…

Por acaso o manual sugere algum método para fazer a consulta das digitais? Ele deve pelo menos indicar alguma bibliografia, ou talvez fazer a propaganda de algum outro produto que você tem de comprar.

É que achar uma impressão digital nessas coleções de “minutiae” (que é o nome para os hashes gerados por cada impressão digital) não é só usar um “equals” - há um processamento mais complexo que deve ser efetuado.

[quote=entanglement]Por acaso o manual sugere algum método para fazer a consulta das digitais? Ele deve pelo menos indicar alguma bibliografia, ou talvez fazer a propaganda de algum outro produto que você tem de comprar.

É que achar uma impressão digital nessas coleções de “minutiae” (que é o nome para os hashes gerados por cada impressão digital) não é só usar um “equals” - há um processamento mais complexo que deve ser efetuado. [/quote]

O leitor é o digitalpersona o que é minutiae ??

magali, vc pode falar o modelo do leitor utilizado para leitura de codigo de barras e a base do seu codigo para ter um auxilio maior?

Acho que você tem de ler a documentação completa do SDK antes de perguntar qualquer coisa aqui.

É que esse é um conceito básico, e sem isso você não consegue prosseguir.

Uma coisa que você não deve estar sabendo: não se comparam diretamente as imagens das impressões digitais, porque isso seria um processo muito lento e falho. Em vez disso, comparam-se alguns pontos (que se chamam “minutiae”) que são, por exemplo, lugares onde algumas linhas das impressões digitais se encontram ou se separam.

Essas “minutiae” são mais fáceis e rápidas para comparar. Entretanto, as imagens ainda têm de ser comparadas porque as “minutiae” só dão uma boa filtragem na base de impressões digitais; a comparação mais fina é feita com as imagens mesmo.

O SDK deve ter um método que faz essa comparação, porque senão ele é inútil

Como comparar uma impressão digital de um objeto

Como comparar uma impressão digital de um objeto
nebster:

magali, vc pode falar o modelo do leitor utilizado para leitura de codigo de barras e a base do seu codigo para ter um auxilio maior?

Eu as imagnes são gravadas no hd e depois atraves de um while vai fazendo a verificação…

[quote=entanglement]Acho que você tem de ler a documentação completa do SDK antes de perguntar qualquer coisa aqui.

É que esse é um conceito básico, e sem isso você não consegue prosseguir.

Uma coisa que você não deve estar sabendo: não se comparam diretamente as imagens das impressões digitais, porque isso seria um processo muito lento e falho. Em vez disso, comparam-se alguns pontos (que se chamam “minutiae”) que são, por exemplo, lugares onde algumas linhas das impressões digitais se encontram ou se separam.

Essas “minutiae” são mais fáceis e rápidas para comparar. Entretanto, as imagens ainda têm de ser comparadas porque as “minutiae” só dão uma boa filtragem na base de impressões digitais; a comparação mais fina é feita com as imagens mesmo.

O SDK deve ter um método que faz essa comparação, porque senão ele é inútil

Como comparar uma impressão digital de um objeto

[/quote]

vo pesqisa sobre o minutiae é bem interessante isso e nem sabia que existia…

Assim vamos pensar na seguinte situação

while (cont <= max) { String caminho = "C:\\Magalli\\" + cont + ".jpeg";

Como faço para que na hora que o java for procurar essas imagens já estejam pre carregadas sem

precisar que ele percorra todo caminho para nao haver perca de desempenho existe como fazer isto ??

[quote=magalli]Assim vamos pensar na seguinte situação

while (cont <= max) { String caminho = "C:\\Magalli\\" + cont + ".jpeg";

Como faço para que na hora que o java for procurar essas imagens já estejam pre carregadas sem

precisar que ele percorra todo caminho para nao haver perca de desempenho existe como fazer isto ??

[/quote]

O nome disso é cache. Mas pra te ajudar você precisa fornecer mais alguns detalhes, tipo, quem escreve esses arquivos e quem lê .

[quote=rmendes08][quote=magalli]Assim vamos pensar na seguinte situação

while (cont <= max) { String caminho = "C:\\Magalli\\" + cont + ".jpeg";

Como faço para que na hora que o java for procurar essas imagens já estejam pre carregadas sem

precisar que ele percorra todo caminho para nao haver perca de desempenho existe como fazer isto ??

[/quote]

O nome disso é cache. Mas pra te ajudar você precisa fornecer mais alguns detalhes, tipo, quem escreve esses arquivos e quem lê .[/quote]

Então eu utilizo o metodo do leitor para fazer a escrita das imagens .jpeg foi só um exemplo por que ele gera as imagens em .fpt(padrão do leitor),
tem algum meio de deixar essas imagens em cache ? e fazer a atualizações dela na cache ??

[quote=magalli][quote=rmendes08][quote=magalli]Assim vamos pensar na seguinte situação

while (cont <= max) { String caminho = "C:\\Magalli\\" + cont + ".jpeg";

Como faço para que na hora que o java for procurar essas imagens já estejam pre carregadas sem

precisar que ele percorra todo caminho para nao haver perca de desempenho existe como fazer isto ??

[/quote]

O nome disso é cache. Mas pra te ajudar você precisa fornecer mais alguns detalhes, tipo, quem escreve esses arquivos e quem lê .[/quote]

Então eu utilizo o metodo do leitor para fazer a escrita das imagens .jpeg foi só um exemplo por que ele gera as imagens em .fpt(padrão do leitor),
tem algum meio de deixar essas imagens em cache ? e fazer a atualizações dela na cache ??[/quote]

E a API do leitor não te fornece nenhum método para devolver os dados como um objeto ou um array ? Ou seja, não há nenhum método que retorne estes dados em memória ?

[quote=rmendes08][quote=magalli][quote=rmendes08][quote=magalli]Assim vamos pensar na seguinte situação

while (cont <= max) { String caminho = "C:\\Magalli\\" + cont + ".jpeg";

Como faço para que na hora que o java for procurar essas imagens já estejam pre carregadas sem

precisar que ele percorra todo caminho para nao haver perca de desempenho existe como fazer isto ??

[/quote]

O nome disso é cache. Mas pra te ajudar você precisa fornecer mais alguns detalhes, tipo, quem escreve esses arquivos e quem lê .[/quote]

Então eu utilizo o metodo do leitor para fazer a escrita das imagens .jpeg foi só um exemplo por que ele gera as imagens em .fpt(padrão do leitor),
tem algum meio de deixar essas imagens em cache ? e fazer a atualizações dela na cache ??[/quote]

E a API do leitor não te fornece nenhum método para devolver os dados como um objeto ou um array ? Ou seja, não há nenhum método que retorne estes dados em memória ?
[/quote]

Não eu utilizo essa API http://www.digitalpersona.com/Support/Reference-Material/Guides/SDK-Guides/U-are-U-SDK-2-2-Developer-Guide/ dá uma olhada…

Dando uma passada de olho no manul, reparei que na página 40 ele diz que a API já fornece classes para identificação e comparação de digitais; Acho que pesquisando melhor você cosegue achar essa implementação. Abs.

Como comparar uma impressão digital de um objeto
rmendes08:

Dando uma passada de olho no manul, reparei que na página 40 ele diz que a API já fornece classes para identificação e comparação de digitais; Acho que pesquisando melhor você cosegue achar essa implementação. Abs.

Só pra tirar a dúvida como funcionaria se fosse para eu colocar uma pasta cheia de arquivos em cache no java vc tem alguma ideia nem que for por cima mesmo para eu tenta implementar…

Como comparar uma impressão digital de um objeto
magalli:

[quote=rmendes08]Dando uma passada de olho no manul, reparei que na página 40 ele diz que a API já fornece classes para identificação e comparação de digitais; Acho que pesquisando melhor você cosegue achar essa implementação. Abs.

Só pra tirar a dúvida como funcionaria se fosse para eu colocar uma pasta cheia de arquivos em cache no java vc tem alguma ideia nem que for por cima mesmo para eu tenta implementar…[/quote]

Basicamente, seria ler estes arquivos para arrays de bytes e colocá-los em uma HashMap:

List<String> nomesArquivos; Map<String,byte[]> cache = new HashMap<>(); for(String nome : nomesArquivos){ byte[] dados = carregaArquivoParaMemoria(nome); cache.put(nome,dados); }

Para recuperar os dados, basta usar o nome do arquivo:

byte [] dados = cache.get(nomeArquivo);

Como comparar uma impressão digital de um objeto
rmendes08:

[quote=magalli][quote=rmendes08]Dando uma passada de olho no manul, reparei que na página 40 ele diz que a API já fornece classes para identificação e comparação de digitais; Acho que pesquisando melhor você cosegue achar essa implementação. Abs.

Só pra tirar a dúvida como funcionaria se fosse para eu colocar uma pasta cheia de arquivos em cache no java vc tem alguma ideia nem que for por cima mesmo para eu tenta implementar…[/quote]

Basicamente, seria ler estes arquivos para arrays de bytes e colocá-los em uma HashMap:

List<String> nomesArquivos; Map<String,byte[]> cache = new HashMap<>(); for(String nome : nomesArquivos){ byte[] dados = carregaArquivoParaMemoria(nome); cache.put(nome,dados); }

Para recuperar os dados, basta usar o nome do arquivo:

byte [] dados = cache.get(nomeArquivo); [/quote]

No caso a pasta tem varias imagens exemplo C:\Digitais dentro dela temos: 1.fpt, 2.fpt,…,100.fpt,…,200.fpt são varias imagens, como fica a lógica para ele busca pelos números…?

ou eu teria que no codigo colocar C:\digitais\1.ftp, C:\digitais\2.ftp, e assim por diante ??

próxima página →