1012327963 发表于 2021-5-20 18:17:36

opencv问题求助

我用安讯士摄像头实时推送视频流,我想在视频流实时显示类似于倒车的八字线,但我line写进去了无法显示出来,就很难受#if 1//运行前改成1
#include<opencv2/opencv.hpp>
#include<stdlib.h>
#include <opencv2/highgui/highgui_c.h>
using namespace cv;
using namespace std;

void main()
{
        VideoCapture cap;
        //cap.open(1); //打开摄像头
        cap.open("rtsp://root:000000@169.254.246.218/axis-media/media.amp");
        if (!cap.isOpened())//如果视频不能正常打开则返回
                return;
        cvWaitKey(30);
        Mat frame;//用于保存每一帧图像
        cap >> frame;
        imshow("【双目原始视图】", frame);
        line(frame, cvPoint(100, 100), cvPoint(250, 250), cvScalar(255, 255, 0), 2);
        cvWaitKey(300);
        //system("C:\\\"Program Files (x86)\"\\\"CHUSEI 3D Webcam\"\\\"CHUSEI 3D Webcam.exe\"");

        char buf = { 0 }; //保存路径变量

        while (1)
        {
                cap >> frame;          //等价于cap.read(frame);
                if (frame.empty())   //如果某帧为空则退出循环
                        break;

                imshow("【双目原始视图】", frame);    //显示双目原始图像原始分辨率为 640*480
                line(frame, cvPoint(100, 100), cvPoint(250, 250), cvScalar(255, 255, 0), 2);
                waitKey(1);
        }
        cap.release();//释放资源
}


#endif

人造人 发表于 2021-5-20 18:17:37

#if 1//运行前改成1
#include<opencv2/opencv.hpp>
#include<stdlib.h>
#include <opencv2/highgui/highgui_c.h>
using namespace cv;
using namespace std;

int main()
{
      VideoCapture cap;
      cap.open(0); //打开摄像头
      //cap.open("rtsp://root:000000@169.254.246.218/axis-media/media.amp");
      if (!cap.isOpened())//如果视频不能正常打开则返回
                return 0;
      cvWaitKey(30);
      Mat frame;//用于保存每一帧图像
      cap >> frame;
      line(frame, cvPoint(100, 100), cvPoint(250, 250), cvScalar(255, 255, 0), 2);
      imshow("hello world", frame);
      cvWaitKey(300);
      //system("C:\\"Program Files (x86)"\\"CHUSEI 3D Webcam"\\"CHUSEI 3D Webcam.exe"");

      char buf = { 0 }; //保存路径变量

      while (1)
      {
                cap >> frame;          //等价于cap.read(frame);
                if (frame.empty())   //如果某帧为空则退出循环
                        break;

                line(frame, cvPoint(100, 100), cvPoint(250, 250), cvScalar(255, 255, 0), 2);
                imshow("hello world", frame);    //显示双目原始图像原始分辨率为 640*480
                waitKey(1);
      }
      cap.release();//释放资源
}


#endif


页: [1]
查看完整版本: opencv问题求助