Billede genkender - Robot

Tags:    billede genkender robot

<< < 12 > >>
Hej Udviklere.

Inspireret af denne tråd:
http://www.udvikleren.dk/forum/34682/java-robot-klasse-ikke-hurtig-nok/

Kan det lade sig gøre at lave en billede genkender i C++ fx, som kan genkende 2 billeders mønstre , fx, et ansigts konstruktur, udfra et helt billede.

Har fx. forskellige billeder, og 1 billede, der skal sammenlignes med de 10 billeder, hvorefter den fx. skal slette det billede der måske er omkring 80-90% nøjeagtig ens.

Lidt svært at forklare faktisk, måske jeg skulle illustere det engang?

Til dem der måske fangede den, hvad mener i?



Måske oversat med Hiphop?



OpenCL har en indbygget funktionalitet til at genkende ansigter, og det er i C. (C++ kompatibelt selvfølgelig)

Det indeholder også diverse datatyper, algoritmer mv., som bruges i computer perception, altså netop det i laver.

Men det er dog kun til at se hvor ansigtet er (det er jo også smart; så har i en boks med selve ansigtet, og i kan ignorer alt andet i billedet).

Til selve genkendelsen, kan jeg anbefale enten Artificial Neural Networks eller Support Vector Machines. Begge er vidt brugt til ansigtsgenkendelse. Et ANN har endda lært at se kønnet på en person blot ved ansigtet, uden nogen speciel domæne viden fra forskernes side.

Jeg har desværre ikke en implementation af ANNs i C++, og jeg fik aldrig skrevet en SVM. Men ved en simpel søgning på C++ og neural network, fandt jeg en masse, så tag blot et kik :)

Pointen med ANN, er at når du har skrevet systemet, at du så kan lære den op via et træningssæt. Dvs., tag en 5000-10000 billeder af forskellige personer, men hvor der er 100 billeder af samme person, og lav en brute force hvor der fejl korrigeres positivt hvis personen matcher, og negativt hvis personen ikke matcher på billedet. Efter at have trænet netværket i (en del) timer, kan du så begynde at slippe det løs på noget reelt data.

Et sådan netværk er også dynamisk; hvis du giver dine brugere mulighed for at sige at et match er forkert (eller godt), så kan du justere netværket online, og dine brugere kan derved være med til at forme dens funktionalitet. (Det kan jo være godt og skidt)



<< < 12 > >>
t