2017-02-13 4 views
1

Я использую opencv с C++ для приложения распознавания лиц, часть распознавания лиц работает очень хорошо, пока я не захочу добавить две строки в видеозахват, чтобы разделить его на 3 части, это мой код, я использую opencv 2.4.11 и visual studio 2012: я написал эту часть, чтобы вставлять строки в изображение, но для видео я ничего не получаю.рисование двух строк на видеообъявлении живого видео

Mat image; 
image = imread("C:\\Users\\user\\Desktop\\pfedocs\\ggg_opt.jpg", CV_LOAD_IMAGE_COLOR); 

    line(image,Point(25,0),Point(25,500),Scalar(0,255,0),3,2,0); 
line(image,Point(190,0),Point(190,500),Scalar(0,255,0),3,2,0); 
line(image,Point(355,0),Point(355,500),Scalar(0,255,0),3,2,0); 

Может ли кто-нибудь помочь мне с этим?

+0

См. [Ask] и укажите [mcve] ... Напряжение ** Минимальное **. – Miki

+0

проблема, с которой я сталкиваюсь, заключается в том, чтобы рисовать линию вместе с алгоритмом обнаружения лица, линия не будет отображаться в кадре – deepmore

+1

Итак, настоящий вопрос: _ «Как рисовать две строки на видео?» _ – Miki

ответ

-1

Я ничего не понимаю из «живого видео захвата». Если есть файл захвата (кстати, его нельзя назвать «живым»), вы можете читать и повторять его кадры. Кроме того, если у вас есть устройство захвата (например, веб-камеры) вы можете прочитать из устройства тоже на следующем примере:

#include "opencv2/opencv.hpp" 
using namespace cv; 
int main(int, char**) 
{ 
    VideoCapture cap(0); // open the default camera 
    if(!cap.isOpened()) // check if we succeeded 
     return -1; 
    Mat edges; 
    namedWindow("edges",1); 
    for(;;) 
    { 
     Mat frame; 
     cap >> frame; // get a new frame from camera 
     cvtColor(frame, edges, COLOR_BGR2GRAY); 
     GaussianBlur(edges, edges, Size(7,7), 1.5, 1.5); 
     Canny(edges, edges, 0, 30, 3); 
     imshow("edges", edges); 
     if(waitKey(30) >= 0) break; 
    } 
    // the camera will be deinitialized automatically in VideoCapture destructor 
    return 0; 
} 

Заканчивать VideoCapture класс.

+0

что мне нужно, чтобы добавить строки в мою рамку видеозахвата, поэтому, когда я получаю видеозапись веб-камеры, я получаю ее разбитой на 3 части, спасибо за ваш ответ – deepmore

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