最近刚开始学习,并辗转与C++、matlab和python程序中,分享一下自己的学习经历,在做视觉识别和图像处理时,难免要追溯到图像的源头。

1.C++版

#include<opencv2\opencv.hpp>

using namespace cv;
using namespace std;

int main()
{
    VideoCapture capture(0);
    while (true)
    {
        Mat img;
        capture >> img;
        imshow("画面内容", img);
        waitKey(2); 
    }
    return 0;
}

2.MATLAB版

camera=webcam;
preview(camera);

只需要两行代码就可以展示动态窗口(matlab在简单方面挺成功的,不过需要安装Support Package for USB Webcams工具箱)。

下面代码展示当前镜头图片,并方便进行后续处理。

picture=camera.snapshot;
imshow(picture);

同样我们也可以通过while循环实现一帧一帧的图像更新在figure窗口展示动态画面:

A=1;
while A>0
    picture=camera.snapshot;
    imshow(picture);
end

%还有就是videoinput

img=videoinput('winvideo',1); %需要先通过imaqhwinfo检测设备

python的调用和C++相似就不做展示了,如果要调用外接摄像头,要注意opencv开发时支持微软Directshow接口,不支持Gige vision协议。

MATLAB要简单很多,使用初学者,我也是从matlab开始入坑的,后来发现很多功能被很难实现的自己的想法,便开始了python和C++的旅程,欢迎交流学习,希望能从这样的方式获取新的进步。

更多推荐

C++版和MATLAB版调用摄像头显示画面