2013-03-17 3 views
3

Я работаю над проектом, где мне нужно запрограммировать малину Pi, чтобы захватить изображение с веб-камеры, найти это изображение для окна и определить, в каком поле оно расположено по размеру. Ящики будут уникальным цветом для остальной среды. Было бы также полезно определить расстояние от коробки и угол до коробки.Система таргетинга на питон

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

Вот мой рабочий код. Это не так много, все это делает захватить изображение с веб-камеры:/

import imgproc 
from img imgproc * 
camera = Camera(160, 120) 
viewer = Viewer(160, 120) 
n = 1 
while (n > 0): 
    img = camera.grabImage() 
    viewer.displayImage(img) 

ответ

2

Это не полное решение, но некоторые хорошие идеи о том, как начать :)

Во-первых, есть Связывание Python для OpenCV, библиотека свободного зрения с открытым исходным кодом, первоначально написанная на C: http://opencv.willowgarage.com/documentation/python/index.html

Первое, что вам нужно сделать при решении проблемы компьютерного зрения, - это предварительный процесс. В частности, зная, что ящик является другим цветом, помогает LOT - это означает, что мы можем порождать по цвету и создавать изображение, которое является черным, где нет ящика, и белый, где находится ящик, с использованием такой техники, как в http://aishack.in/tutorials/thresholding/.

Затем вы должны выполнить процесс, аналогичный описанному в этом блоге грабли/судоулавливанию Sudoku - вы делаете извлечение blob (http://en.wikipedia.org/wiki/Blob_extraction), затем выполните преобразование hough, чтобы получить линии, а затем вы можете сравнить расстояния линий до друг друга, чтобы определить коэффициент коробки. http://aishack.in/tutorials/sudoku-grabber-with-opencv-plot/

Довольно много раз читал о людях OpenCV судок решателях, пока вы не получите суть того, как это делается, потому что есть много хороших учебники и это просто иллюстрация того, как компьютерное зрение проекты идут: https://www.google.com.au/search?q=sudoku+opencv&aq=f&oq=sudoku+opencv&aqs=chrome.0.57j60l3j0l2.1506&sourceid=chrome&ie=UTF-8

0

You может захотеть установить SimpleCV из github repo. Используя SimpleCV, вы должны получить цвет blob с помощью команды Image.hueDistance. Если вы используете команду findBlobs для поиска своих ящиков, каждый blob должен иметь соотношение сторон в качестве параметра. Мы просто разместили наш полный учебник PyCon о SimpleCV here. Вы можете просматривать только слайды here. Мы слышали, что есть некоторые проблемы с установкой PyGame (зависимость SimpleCV) от RaspberryPi. This walk through might address those issues.