Как определить рыбу по фото

Как определить рыбу по фото

Сергей Липченко, опубликовано 22 декабря 2016 г.

Даже самые заядлые рыбаки иногда ловят рыбу, которую просто не могут опознать. Когда это происходит, как узнать, сколько весит рыба, открыт ли на нее сезон ловли, и съедобна ли она? При помощи быстрого сканирования вашего улова, приложение FishVerify может определить вид рыбы, предоставить информацию о ее съедобности и среде обитания, и, используя GPS телефона, может сообщить какое количество данной рыбы можно выловить согласно закону.

FishVerify создано на основе нейронной сети, виде искусственного интеллекта, который может быть обучен при наборе данных и использоваться для распознавания изображений. В этом случае систему наполнили 1,5 миллионами картинок более 1000 различных видов рыбы, и бета-версия приложения на данный момент разбирается примерно в 150 видах.

Используя постоянно растущий набор данных, суть заключается в том, чтобы рыбаки могли сделать фото любой пойманной рыбы, и за пару секунд приложение скажет им, что это за рыба, а также все ее физические особенности, где ее можно найти, как поймать, и можно ли ее кушать. Существующие фотографии также могут быть импортированы, если вдруг неделю назад вы поймали неизвестную рыбу, но не знали, что это за вид и просто выкинули, сфотографировав предварительно.

FishVerify также может использовать информацию о местонахождении с вашего телефона, чтобы проверить, как много этой рыбы можно унести, не нарвавшись на штраф от рыбнадзора, сезонность этой рыбы и рекорды по улову этого вида. Приложение автоматически будет ставить геотеги ваших уловов, создавая подробный дневник того, где, когда и что вы словили. Если же рыбаку нужна конкретная рыба, то приложение подскажет, где лучше всего искать указанный вид.

Приложение FishVerify представлено на Kickstarter, где за 15 долларов и выше можно получить доступ к бета-версии уже сейчас. Доступно приложение пока только на iOS, но версия для Android уже находится в разработке.

Новости по теме:

Ремонт компьютеров на дому – бояться не стоит

Ремонтировать ПК самостоятельно в настоящее время могут чуть ли не все, однако последствия такого саморемонта могут быть весьма печальными. Даже такая поломка, как слетевшие драйвера, при «умелом» обращении может привести к выходу из строя всей операционной системы. Но как быть, если времени везти ПК в сервис нет, а руки как росли анатомически неправильно, так и растут? Единственный верный выход – вызов мастера на дом.

Большая пятерка VPN: что посоветовать россиянам?

Как известно, в России многие сайты заблокированы Роскомнадзором – те же торренты «вне закона». Зайти на них просто так не получится, нужно пользоваться сторонними сервисами – VPN. Правда, многие из них тоже заблокированы, но основные пока еще работают, о них и поговорим. Стоит отметить, что можно обойтись и вовсе без всего этого – достаточно установить расширение для браузера FriGate, и все заблокированные сайты вновь будут доступны. Но, если требуется именно VPN, тогда читайте дальше.

Как самостоятельно создать бесплатный сайт без навыков в разработке

В 2019 году свой сайт нужен всем – крупным компаниям, индивидуальным предпринимателям, самозанятым и даже блогерам – YouTube-то могут закрыть в России в любой момент. Разумеется, писать сайт с нуля, не имея навыков и опыта, бессмысленно – на разработку гарантированно уйдут месяцы, если вам нужен достойный результат. Но все же можно сделать сайт самому – для этого существуют специальные конструкторы, причем еще и бесплатные, которые заметно упрощают весь процесс и делают его доступным для тех, кто не отличает HTML от PHP и вообще не знает, что это такое.

Xiaomi выпустила фирменное полезное ПО для всех смартфонов

Компания Xiaomi сообщила о запуске фирменного приложения Cleaner Lite на всех смартфонах под Android. Программа входит в состав MIUI и нужна для удаления с гаджетов ненужных файлов и прочего мусора, и работает оно очень эффективно.

Как работать с образами дисков под ОС Windows 7

Оптические диски давно стали пережитком прошлого, как и дискеты, и в современных ПК и ноутбуках уже даже нет приводов под них. Однако умирать окончательно они пока не собираются, тем более что еще не все перенесли с них нужную информацию. Кроме того, в Сети есть немало образов компакт- и DVD-дисков, в которых хранятся важные данные, да и сами ОС Windows нередко поставляются именно в таком формате. Так как же работать с подобного рода файлами? На самом деле, все очень просто – существуют специальные программы, которые могут не только открывать, но также модифицировать эти образы и даже записывать их – можно на «болванки», если вы застряли в прошлом, можно на обычные флешки.

Определитель составлен по материалам книги Е. А. Веселова "Определитель пресноводных рыб фауны СССР"; Москва, "Просвещение", 1977 г.

Рис. 1. Миноговые и осетровые: 1 — каспийская, или волжская, минога (Caspiomyzon wagneri); 2 — тихоокеанская, или ледовоморская, минога (Lampetra japonica); 3 — речная минога (L. fluviatilis); 4 — белуга (Huso huso); 5 — шип (Acipenser nudiventris).

.

Рис. 2. Осетровые: 1 — стерлядь (Acipenser ruthenus); 2 — амурский осетр (A. schrencki); 3 — русский осетр (A. guldestadti).

Рис. 3. Осетровые: 1 — сибирский осетр (Acipenser baeri); 2 — атлантический осетр (A. sturio); 3 — севрюга (A. stellatus).

Рис. 4. Осетровые, сельдевые и лососевые: 1 — амударьинский большой лопатонос (Pseudoscaphirhynchus kaufmanni); 2 — каспийский пузанок (Caspialosa caspia); 3 — азовский пузанок (C. tanaica); 4 — тюлька (Clupeonella delicatula); 5 — сима (Oncorhynchus masu), самка; 6 — сима, самец.

Читайте также:  Ecr 809nl инструкция

Рис. 5. Лососевые: 1- кижуч (Oncorhynchus kisutch), самка; 2 — кижуч , самец; 3 — кета (O. keta), самка; 4 — кета, самец; 5 — чавыча (O. tschawytscha).

Рис. 6. Лососевые: 1 — красная, или нерка (Oncorhynchus nerka) самка; 2 — нерка самец; 3 — горбуша (O. gorbuscha), самец; 4 — горбуша, самка.

Рис. 7. Лососевые: 1 — лосось семга (Salmo salar); 2 — лосось кумжа (S. trutta); 3 — ручьевая форель (S. t. morpha fario); 4 — озерная форель (S. t. m. lacustris).

Рис. 8. Лососевые: 1 — севанская форель ишхан (S. ischchan); 2 — севанская форель, летний бахтак (S. i. infraspecies aestivalis); 3 — голец (Salvelinus alpinus); 4 — мальма, или тихоокеанский голец (S. malma); 5 — палья (S. lepechini).

Рис. 9. Лососевые: 1 — кунджа (Salvelinus leucomainis); 2 — таймень (Hucho taimen); 3 — ленок (Brachymystax lenok).

Рис. 10. Лососевые: 1 — нельма (Stenodus leucichthys nelma); 2 — белорыбица (S. leucichthys); 3 — европейская ряпушка (Coregonus albula); 4 — сибирская ряпушка (C. sardinella); 5 — тугун (C. tugun); 6 — омуль (C. autumnalis); 7 — Байкальский омуль (C. a. migratorius).

Рис. 11. Лососевые: 1 — пелядь (Coregonus peled); 2 — чир (C. nasus); 3 — пыжьян (C. lavaretus pidschian); 4 — муксун (C. muksun).

Рис. 12. Лососевые: 1 — амурский сиг (C. ussuriensis); 2 — валёк (Prosopium cylindraceus); 3 — волховский сиг (Coregonus lavaretus baeri); 4 — лудога (C. l. ludoga).

Рис. 13. Лососевые: 1 — валаамка (Coregonus lavaretus widegreni); 2 — чудской сиг (C. l. maraenoides); 3 — енисейский речной сиг (C. l. pidschian n. fluviatilis).

Рис. 14. Хариусовые, корюшковые и салангасовые: 1 — хариус (Thymallus thymallus); 2 — байкальский хариус (T. arcticus baicalensis); 3 — сибирский хариус (T. arcticus); 4 — азиатская корюшка (Osmerus eperlanus dentex); 5 — малоротая корюшка (Hypomesus olidus); 6 — корюшка (Osmerus eperlanus); 7 — озерная корюшка, или снеток (O. e. eperlanus morpha spirinchus); 8 — лапша-рыба (Salangichthus microdon).

Рис. 15. Щуковые, чукучановые и карповые: 1 — щука (Esox lucius); 2 — щука с пятнистой окраской (E. lucius); 3 — чукучан (Catostomus catostomus rostratus); 4 — плотва (Rutilus rutilus).

Рис. 16. Карповые: 1 — тарань (Rutilus rutilus heckeli); 2 — астраханская вобла (R. r. caspicus); 3 — кутум (R. frisii kutum); 4 — китайская плотва, или черный амур (Mylopharyngodon piceus).

Рис. 17. Карповые: 1 — елец (Leuciscus leuciscus); 2 — сибирский елец (L. l. baicalensis); 3 — чебак иссыкульский (L. schmidti); 4 — голавль (L. cephalus).

Рис. 18. Карповые: 1- восточная "красноперка" (Leuciscus brandti); 2 — язь (L. idus); 3 — амурский язь (L. waleckii); 4 — красноперка (Scardinius erythophthalmus); 5 — озерный гольян (Phoxinus percnurus).

Рис. 19. Карповые: 1 — белый амур (Ctenopharyngodon idella); 2 — узкоголовый краснопер (Pseudaspius leptocephalus); 3 — жерех (Aspius aspius aspius); 4 — линь (Tinca tinca).

Рис. 20. Карповые: 1 — подуст (Chondrostoma nasus); 2 — пескарь (Gobio gobio); 3 — севанская храмуля (Varicorhinus capoeta sevangi); 4 — закаспийская храмуля (V. c. heratensis); 5 — аральский усач (Barbus brachicephalus).

Рис. 21. Карповые: 1 — днепровский усач, или марена (Barbus barbus borysthenicus); 2 — усач булат-маи, или усач-чанари (B. capito); 3 — конь-губарь (Hemibarbus labeo); 4 — балхашская маринка (Schizothorax argentatus); 5 — илийская маринка (Sch, pseudaksaiensis).

Рис. 22. Карповые: 1 — голый осман (Diptychus dybowskii); 2 — аральская шемая (Chalcalburnus chalcoides aralensis); 3 — черноморская шемая (Ch. ch. danubicus); 4 — густера (Blicca bjoerkna); 5 — уклея, или уклейка (Alburnus alburnus).

Рис. 23. Карповые: 1 — лещ (Abramis brama); 2 — белоглазка (A. sapa); 3 — синец, или сопа (A. ballerus); 4 — сырть (Vimba vimba).

Рис. 24. Карповые: 1 — каспийский рыбец (Vimba vimba persa); 2 — черный амурский лещ (Megalobrama terminalis); 3 — белый амурский лещ (Parabramis pekinensis).

Рис. 25. Карповые: 1 — верхогляд (Erythroculter erythropterus); 2 — монгольский краснопер (E. mongolicus); 3 — востробрюшка (Hemiculter leucisculus); 4 — чехонь (Pelecus cultratus); 5 — круглый золотой карась (Carassius carassius); 6 — серебряный карась (C. auratus gibilio).

Рис. 26. Карповые: 1 — сазан или карп (Cyprinus carpio); 2 — желтощек (Elopichthys bambusa); 3 — толстолобик, или толпыга (Hypophthalmichthys molitrix).

Рис. 27. Вьюновые, сомовые, косатки: 1 — пятнистый губач (Nemachilus strauchi); 2 — сом (Silurus glanis); 3 — амурский сом (Parasilurus asotus); 4 — косатка-скрипун (Pseudobagrus fulvidraco).

Рис. 28. Косатки, угревые, полурыловые, тресковые и колюшковые: 1 — косатка уссурийская (Liocassis ussuriensis); 2 — речной угорь (Anguilla anguilla); 3 — налим (Lota lota); 4 — японский полурыл (Hyporhamphus sajori); 5 — трехиглая колюшка (Gasterosteus aculeatus); 6 — девятииглая колюшка (Pungitius pungitius).

Рис. 29. Кефалевые, атериновые, змееголовые, серрановые: 1 — лобан (Mugil cephalus); 2 — пиленгас (M. so-iuy); 3 — каспийская атеринка (Atherina mochon pontica caspia); 4 — змееголов (Ophiocephalus argus warpachowskii); 5 — ауха, или китайский ерш (Siniperca chua-tsi).

Рис. 30. Окуневые: 1 — судак (Lucioperca lucioperca); 2 — берш (L. volgensis); 3 — окунь (Perca fluviatilis).

Рис. 31. Окуневые, смаридовые, бельдюговые, подкаменщиковые, байкальские широколобки: 1 — балхашский окунь (Perca schrenki); 2 — азовская перкарина (Percarina demidoffi maeotica); 3 — ерш (Acerina cernua); 4 — смарида (Smaris smaris); 5 — бельдюга (Zoarces viviparus); 6 — ледовитоморская рогатка (Myoxocephalus quadricornis labradoricus); 7 — песчаная широколобка (Cottus kessleri).

Рис. 32. Байкальские широколобки, камбаловые: 1 — красная широколобка (Procottus jeitelesi); 2 — желтлкрылка, черногривка, или желтогривка (Cottocomephorus grewingki); 3 — речная камбала (Pleuronectes flesus); 4 — тихоокеанская речная, или звездчатая, камбала (P. stellatus)

Определитель составлен по материалам книги Е. А. Веселова "Определитель пресноводных рыб фауны СССР"; Москва, "Просвещение", 1977 г.

Читайте также:  Куфар гродно сельхоз животные

На развитие компьютерного зрения в последние 10 лет не обращал внимание лишь отстраненный от мира человек. Технология распознавания образов своим процветанием обязана глубокому обучению. Достижения машин поражают воображение.

  • В 2012 году происходит соревнование по классификации картинок, где выигрывает глубокая нейронная сеть с грандиозным отрывом от второго места;
  • Три года спустя машина классифицирует 1000 классов картинок с точностью, превосходящей человеческую;
  • Распознавание рукописных символов и дорожных знаков превзошли людей по точности.
  • Глаза самоуправляемых машин — лидары, радары и камеры способны распознавать окружение, дорожную разметку, транспорт, автомобили, а также пол и возраст пешеходов.
  • Точность чтения по губам сетью, обученной специалистами Google DeepMind и Оксфордского университета, превышает человеческую;
  • Распознавание возраста и пола — точность превысила человеческую;
  • Одним из самых развивающихся направлений технологий машинного зрения выступает распознавание лиц с акцентом на биометрию в связи с растущим спросом на данную технологию для обеспечения безопасности. Несколько стран используют технологии распознавания лиц в своих системах наружного видеонаблюдения. Благодаря ним даже был пойман преступник.

Это лишь вершина айсберга достижений алгоритмов компьютерного зрения. Остались без упоминания достижения в искусстве, медицине, играх и впечатляющие генеративные модели, такие как генератор кошечек. Некоторые источники утверждают, что именно благодаря кошечкам удалось позаимствовать идею сверточных нейросетей у природы, создавшей зрительную кору мозга.

Компьютерное зрение, как часть мира будущего

Технологии для автоматизации задачи, требующие распознавание образов, пользуются спросом на службе правительств и в высокотехнологичных компаниях. Они помогают решать задачи людей, нуждающихся в помощи — фермеров и защитников окружающей среды. Приложение Seeing AI от Microsoft описывает окружающий мир для слепых людей. А молодой разработчик создал для родителей фермеров сортировку овощей, облегчив труд.

Мы давно следим за развитием технологий. Потенциал машинного обучения вдохновляет нас искать приложения перспективных технологий в наших продуктах для решения повседневных задач простых людей. В 2016 году, работая над социальной сетью для рыбаков, мы решили сделать лучшее, что в наших силах, чтобы любимое многими хобби, стало не просто удобнее, но и интереснее.

Цель и постановка задачи

Современные рыбацкие сообщества до сих пор живут на форумах, построенных в начале 2000-х. Темы с рассказами о лучших местах для рыбалки, снаряжении и фотографиями улова — наиболее активны. Люди делятся запечатленной на смартфон рыбой, выкладывая пост на форум. Братья по оружию (в этом случае, удочке) обсуждают добычу, соревнуясь друг с другом кто поймал щуку побольше. Такую теплую соревновательную атмосферу нарушать нам не хотелось. Как раз напротив, сделать рыбалку активнее, удобнее и чуточку современнее, по крайней мере, в этом аспекте.

Порядка 500 млн человек во всем мире увлекаются сегодня рыбалкой. Представители одного из самых больших комьюнити, давно берут с собой смартфоны на рыбалку, однако, все также сидят на устаревших форумах или группах в Facebook. Удивительно, но современных ресурсов и приложений для рыбаков почти нет. Мы хотели исправить это досадное упущение посредством технологий.

Созданное нами приложение поможет рыбакам не только определить вид и длину рыбы, но и оставить трофей на доске почета. Каждый рыбак хочет видеть добычу в своей коллекции. Сканируя поимку, приложение добавляет ее в профиль, так, чтобы пользователь смог похвастаться уловом со своими друзьями. Наверное, у большинства рыбаков, которые считают это занятие больше чем хобби, есть чувство соревновательного азарта. Специально для них, мы также решили добавить рейтинги. Пользователи с большим уловом будут на вершине рейтинга, становясь стимулом для остальных. Рассказы типа «я поймал ВОТ такую рыбу» не будут восприниматься всерьез. Приложение будет знать, кого поймал рыбак и какой длины.

Человека больше не будет отвлекать загрузка фотографий на форум, определение вида и размера рыбы — все сделает машинное обучение. Останется только наслаждаться любимым занятием — ловить рыбку.

Учим сеть улавливать рыбу

Чтобы научить сеть распознавать длину и вид рыбы, помимо мощных видокарт нам было необходимо:

  • собрать данные;
  • обработать до чистого набора размеченных красивых картинок с рыбой;
  • выбрать подходящие архитектуры;
  • учить и валидировать;
  • исправлять ошибки и пробовать снова.

Сбор данных

Открытые датасеты с разметкой вида рыбы или бокса с ее положением практически отсутствуют. Данные можно найти у ImageNet и отдельных лабораторий, но объём, качество снимков и разметки оставляют желать лучшего.
Первого взгляда на первую сотню фотографий улова будет достаточно, чтобы понять, что рыбакам со всего мира нравится делать селфи с рыбой, а не качественные фотографии.
Фотографии и видео с рыбалки содержат нужные данные, но они имеют ряд существенных недостатков:

40% датасета:

  1. Рыба занимает небольшую часть фотографии, или ужасно смазана, сфотографирована издалека;
  2. Руки рыбака закрывают собой значительную часть рыбы;
  3. Рыба видна частично и не помещается в кадр, обрезана или перекрыта на снимке.

  • Кадр не поддается классификации:

На фотографии несколько видов, а мы хотим для каждого изображения определять один класс.
Рыбаки очень часто путают похожие виды, «загрязняя» данные.

Глубокие сети требовательны к объему и менее требовательны к качеству. Но рыболовные снимки в сыром виде непригодны.

Наша методика позволила нам решить сразу несколько проблем — сбора данных и их очистки. Она заключается в последовательном увеличении качества, моделей и данных:
Мы размечаем вручную границы рыбы для нескольких непохожих видов для избежания переучивания на один вид. Например, камбала, щука и карп. Несколько дней работы — это пара тысяч картинок.

Читайте также:  Вес ягдтерьера по месяцам

Выбираем архитектуру для детекции. Быструю и точную для работы с большим количеством данных. R-FCN показалась подходящей.

Обучаем сеть различать рыбу и не-рыбу (фон), детектить первое. Делаем веб-интерфейс для инференса медийных материалов наших рыбаков. Он может вставить в веб интерфейс ссылку на своё видео, которое будет покадрово прогнанно через модель детекции. Все кадры, содержащие рыбу, будут выведены на экран для удаления дубликатов и ошибок…

Такая админка позволяет собирать данные для целевого вида, а обработанные сетью и проверенные человеком использовать для:

  1. Дообучения нашей модели детекции. Отбирая примеры удачной работы на новых видах мы делаем transfer на большее количество видов и повышаем точность и качество модели;
  2. Вырезания фрагмента с рыбой из фотографии — на выходе, установив высокий порог уверенности для фильтра хороших кадров, получаем крупные качественные кадры с одной рыбой. То что нужно для обучения модели классификации! Обработанных таким способом качественных изображений

60%.

Обучение классификации

Мы намерены расширять количество распознаваемых видов, поэтому выбирали архитектуру классификатора среди сетей, которые предсказывали 1000 классов на ImageNet. Выбор пал на Inception-ResNet-2, как оптимальное соотношение размера и точности.

Для обучения использовались TensorFlow, EVGA GeForce GTX 1080 Ti и EVGA GeForce GTX 1080.

Полное обучение модели дало большую точность, чем обучение полносвязных слоев модели ImageNet. Скорее всего потому, что сеть научилась низкоуровневым паттернам, таким как рисунок чешуи. Обучение заняло более 80 часов на двух видеокартах.

Первые результаты были поразительны!

Пока все восхищались тем фактом, что доучили нейронку до уровня мультипликационной абстракции, некоторых терзало сомнение, что сеть переучилась.

Но зря, камера запечатлела типичного керри на миде, значит всё впорядке.

Полученное решение страдало от больших ошибок на похожих видах. На изображениях представлены легендарный язь и голавль, отличить которых, способны лишь заядлыми рыбаками.

Ситуация обстоит еще хуже с форелью.

Более десятка популярных видов форелей и лососей не просто могут запутать неспециалиста, но и невероятно изменчивы в течении жизни. От стадии личинки до нереста они меняют свой окрас и форму кардинально в зависимости от возраста, времени года и даже состава воды. Далеко не каждый человек распознает один и тот же вид одной форели с интервалом в несколько лет. Такие виды, как кижуч и чавыча отличить человеку сложно даже по описанию. Из-за человеческой ошибки данные перепутаны, для каждого класса модель требует не менее 1000 фотографий для точности более 80%, при нескольких десятках видах вручную компетентно просматривать такие объёмы ресурсозатратно.

Наше решение заключалось в итерационном очищении датасета от ошибок разметки посредством самой модели. Модель прогоняем на своём же датасете, находим все картинки с несовпадением предсказания модели и разметки. Большинство таких картинок оказываются ошибками последнего. Отсеиваем их, переучиваем модель и получаем высокие метрики на валидационном датасете. В результате, удалось получить точность модели более 90+% даже для похожих видов. Сеть умеет практически безошибочно различать 8 схожих видов форелей и лососей, и более десятка окуней. Однако, в редких случаях сеть все же ошибается. Причину лучше показать наглядно:

Измеряем улов

Переоценка своего улова — очень важная фича белковых нейросеток. Для точного измерения, нужно знать границы рыбы на фотографии и иметь дальномер, как на новых смартфонах со сдвоенными камерами.

Наша цель — обеспечить рыбакам точное измерение улова автоматически, простым наведением телефона. Приложение должно уметь определять, когда рыба в кадре классифицирована и локализована. Необходимо измерять длину рыб по нескольким различным стандартам. Архитектура Faster RCNN с Inception-ResNet-2 демонстрирует себя лучше аналогов, переводим классификаци на неё с R-FCN.

Результаты на аналогичных данных говорят сами за себя.

Тем не менее, такой метод измерения нам не подходит, так как боксы корректно определяющие длину и ширину только для горизонтального и вертикального положения, для произвольного положения не подходят и не способны оценивать длину изогнутой рыбы.

Точнее измеряем улов

Размечаем несколько тысяч фотографий ключевыми точками для покрытия всех способов измерения по различным стандартам.

Обучаем модель для регрессии по ключевым точкам, которая увеличит точность измерения длины и сможет влезть в телефон. Если мы переносим детекцию на устройство, то сможем отправлять на классификацию уже обрезанный участок с рыбой, что увеличит надёжность и поможет снять нагрузку с сервера. Телефон будет отправлять запрос только, когда обнаружит рыбу. К сожалению, модель регрессии точек не сможет отличить рыбу от не-рыбы, поэтому нам понадобится модель такого бинарного классификатора на устройство.

Для регрессии по ключевым точкам берём предобученную на ImageNet’e «голову» от архитектуры ResNet50, добавляем 2 полносвязных слоя на регрессию 14 переменных — координаты всех точек. Функция потерь MAE. Вес модели

Аугментации: флипы горизонтальные/вертикальные, яркость, рандомные кропы (хорошо зашли), скейл. Все координаты точек нормировались на [-1, 1]

Для создания бинарного классификатора, создаём свою модель, похожую на AlexNet. Обучаем на рыбах и «не-рыбах».

Тут все стандартно: бинарная кросс энтропия, аугментации, метрика accuracy (выборки сбалансированы)

В дальнейшем мы планируем увеличивать количество распознаваемых видов, превзойти точностью модели человеческую и переносить модель полностью на устройство. Наша цель не просто создать универсальный инструмент для рыбаков, а объединить все комьюнити в едином проекте.

Ссылка на основную публикацию
Как определить возраст британского кота
Многие владельцы интересуются вопросом, как определить возраст кошки. Если она родилась у вас дома, вы знаете не только год, но...
Как назвать кактус имена список прикольные
Как то зашел я в магазин хозтоваров и увидел на прилавке великолепный цветущий кактус. Его цветок и запах поражали. Но...
Как называется кастрированный осел
Содержание Untitled [ править код ] Эта статья выставлялась на удаление и была оставлена.Пояснение причин и соответствующее обсуждение вы можете...
Как определить возраст лайки
Определение возраста по зубам собаки и другим внешним признакам обычно применяется в том случае, если нет документации о происхождении. Наиболее...
Adblock detector