Варианты обработки изображений/видео
У меня есть небольшая 12-вольтная настольная камера, которая помещается внутри пчелиного улья. Он горит инфракрасными светодиодами (пчелы не видят инфракрасный порт). Он посылает простой сигнал NTSC по проводу к небольшому телевизору, который у меня есть. Это позволяет мне видеть внутреннюю часть улья, не мешая пчелам.
У королевы есть точка на ее спине, так что это очень очевидно, когда она в кадре.
Я хотел бы обработать сигнал таким образом, чтобы он регистрировался, когда королева находится в кадре. Это не должно быть очень точным счетом. Вместо обработки видео было бы так же хорошо снимать изображение каждые 10 секунд и видеть, есть ли определенная яркость (указывающая, что королева находится в кадре).
Это полезно, так как помогает хранителям пчел знать, жив ли королева (если она не появлялась в течение нескольких дней, это могло означать, что что-то не так).
Мне бы очень хотелось услышать предложения по недорогим способам обработки этого видео, особенно с низким энергопотреблением. Raspberry Pi? Arduino?
Пример камеры:
здесь
Пример видео (без королевы в кадре):
здесь
Ответы
Ответ 1
Во-первых, отличный проект. Хотелось бы, чтобы я работал над чем-то этим.
Очевидным решением здесь является OpenCV, который будет работать как на платформе Raspberry Pi (Linux), так и на платформе Android, но не на Arduino, насколько я знаю. (Из двух я бы пошел с малиной Pi для начала, так как это будет менее конкретным в том, как вы программируете.)
Как вы описали это, вы можете уйти с менее надежными инструментами обработки изображений, но эти проблемы редко бывают такими же легкими, как кажется на первый взгляд. Например, мне кажется, что самое яркое пятно в видео (как я полагаю) - это освещающий диод, отражающийся от стекла. Но если это не так, это будет что-то еще, поэтому не начинайте проект, завязав руки за спиной. И если это невозможно сделать с OpenCV, это, вероятно, не может быть сделано вообще.
Компьютеры малины Pi составляют около 50 долларов США, OpenCV - бесплатно, поэтому я сомневаюсь, что вы получите гораздо дешевле, чем это.
Если вы еще не сделали что-то подобное раньше, я бы рекомендовал не программировать OpenCV прямо на С++ для чего-то такого исследовательского, и это тоже не очень требовательно. Вместо этого используйте, например, привязки Python, чтобы вы могли интерактивно просматривать изображения.
Вы также спросили об Arduino, и я не думаю, что это такой хороший выбор для этого типа проекта. Во-первых, вам понадобится дополнительное оборудование, например, экран видео (например, http://nootropicdesign.com/ve/), добавив к этому счету. Во-вторых, для Arduino нет хороших библиотек обработки изображений, поэтому вы будете делать все с нуля. В-третьих, проще всего отладить программу микроконтроллера.
Ответ 2
У меня нет хорошего ответа об обработке изображений, но я знаю, как сделать это намного проще. Когда вы отмечаете королеву, бросьте какие-то ретро-отражающие бусины на краску, чтобы получить гораздо более высокий возврат света.
Я думаю, вы можете просто смешать бусины с вашей краской - используйте 1 часть бисер на 3 части по объему. Тем не менее, я думаю, что вы получите лучшие результаты, если вы налейте бисер на поверхность влажной краски, когда пометьте королеву. Я наполнил бы много бусинок, чтобы обеспечить палочку (вы можете сделать это над миской или сумкой, чтобы поймать все лишние бусины.
Я предлагаю сделать некоторые тесты перед маркировкой королевы - я никогда не применял бусинки раньше, но я работал с световозвращающей лентой и краской, и это даст вам значительно более высокий свет. Насколько сильно сильно зависит (т.е. У меня нет номера), но я предполагаю, что в 2-5 раз больше света - достаточно того, что ваша камера будет насыщаться, когда увидит королеву с текущими настройками экспозиции. Если вы установите триггер при насыщении некоторого порогового количества пикселей (убедитесь, что несколько пикселей насыщены нормально), это должно дать вам очень хорошее отношение сигнал/шум, что значительно упростит обработку изображений.
[EDIT]
Я сделал немного больше копания, и есть несколько важных параметров для рассмотрения. Во-первых, с индексом 1,5 (бусинки, которые я связывал раньше) бусины не будут фокусировать свет на задней поверхности и ретро-отражать, они будут просто действовать как линзы. Вероятно, они немного искрится и немного отразятся, но вам может быть лучше просто добавить блеск к краске.
Вы можете получить ОЧЕНЬ сильно отражающую ленту, которая имеет правильный вид бусинок И имеет отражающее покрытие на задней части бусинок, чтобы отразить намного больше света! Вам нужно будет выяснить, как приклеить немного ленты к королеве, чтобы использовать ее, но это может быть лучшее отражение, которое вы можете получить.
http://www.amazon.com/3M-198-Scotch-Reflective-Silver/dp/B00004Z49Q
Вы также можете попробовать бисер, который я рекомендовал ранее, с показателем преломления 1,5. Я бы не стал проверять его на бумаге против блеска, чтобы убедиться, что вы не тратите свое время.
http://www.colesafety.com/Reflective-Powder-Glass-Beads-GSB10Powder.htm
У меня возникли проблемы с поиском источника для 1 фунта или менее стеклянных шариков с показателем преломления 1,9+. Я сделаю больше поиска, и я дам вам знать, найду ли я достойный источник небольших количеств.