Имали ли сте някога много добро изображение, което е имало някои малки проблеми, невероятна снимка на маса за хранене, но въпреки това на стената зад нея виси лоша картина? Е, можете да намерите най-подобните изглеждащи изображения на това, което искате, и да изберете едно, което отговаря също толкова добре на вашите нужди, без ненужни проблеми. Ще ви дадем демонстрация и Github Repository, за да изпробвате сами нашия код.

За да създадем кода, който намира най-подобното изображение на вашето, първо вземаме инструмента за извличане на функции от предварително обучен CNN в Imagenet. Много от функциите за извличане на функции на моделите връщат много големи векторни вграждания (например VGG-16 би върнал 22 000 дълги вграждания на изображение и големи тежести), така че решихме да използваме regnet_y_400mf като гръбнак, той има добър компромис между качеството и теглото на модела, достатъчно добри резултати, без да е изключително тежък.

Използвайки инструмента за извличане на функции от regnet_y_400mf, ние създаваме векторни вграждания за всяко изображение. Можем да видим какви изображения са близки по съдържание (т.е. изображения на едни и същи неща), като използваме косинусово сходство между векторните представяния на изображенията. След това можете да въведете свое собствено изображение, моделът ще изчисли векторното представяне на изображението и ще го сравни с всички изображения в нашия набор от данни, използвайки косинусово сходство, „n“ най-близките по съдържание изображения от набора от данни до вашето изображение ще бъде изведен.

Това е „Наборът от данни“, който използвахме, и ето „Демо“ на нашата работа.

Използвахме „лекия“ набор от данни от Unsplash, уебсайт, където можете да получите изображения и да ги използвате за търговска употреба, стига да споменете, че идва от Unsplash. Има „олекотена“ версия и „пълна“ версия, но „олекотената“ версия тежи 1,5 GB, а „пълната“ версия тежи 40 GB, наборът от данни от 1,5 GB е достатъчен за нас.

Този тип модели се използват на много места, например в търсенето на изображения в Google и зоната „подобно на“, която се отваря, когато натиснете върху изображение (система за препоръки).