2013-07-09 2 views
-2

У меня есть 4 координаты, относящиеся к пикселю изображения. Скажем (x1, y1), (x2, y2), (x3, y3) и (x4, y4). Как рисовать многоугольник, который проходит по этим 4 координатам?Как нарисовать многоугольник с помощью OpenCV?

void cvFillPoly(CvArr* img, CvPoint** pts, int* npts, int contours, CvScalar color, int lineType=8, int shift=0) 

Заполняет интерьер полигона.

Параметры: изображения - Image

PTS - массив указателей на полигоны

НПЦ - массив полигонов вершинных счетчиков

контуров - Количество контуров, которые связывают заполненную область

цвет - Цвет многоугольника

lineType - Тип границ многоугольника, с й линия Описания

сдвиг - количество дробных разрядов в координаты вершин

Это информация. Как и где я могу поместить свои координаты?

Может ли кто-нибудь объяснить код?

+0

Eventhough этот вопрос закрыт, он все равно полезно. Я получил полезные знания. –

ответ

3

Вы должны создать массив или вектор ваших 4 точек

vector<Point> points(4); 
points = { (x1,y1),(x2,y2),(x3,y3),(x4,y4) }; 

, то вы можете использовать этот вектор в качестве входного массива.

Вы должны использовать draw approx polygon method

vector<Point> approxCurve; 
double epsilon = ... // choose a value. 
approxPolyDP(points, approxCurve, epsilon, true); 
+0

Спасибо. Но можете ли вы быть более ясными? – Frankenstein

+0

Я понимаю синтаксис.! Ожидал пример.! И спасибо btw :) – Frankenstein

Смежные вопросы