VideoCapture capture;
capture.open(0, CAP_DSHOW);
capture.set(CAP_PROP_FRAME_WIDTH, 1920);
capture.set(CAP_PROP_FRAME_HEIGHT, 1080);
Mat matFrame;
capture.read(matFrame);
capture.release();
imshow("Show Frame", matFrame);
1- 调整分辨率 capture.set 应当写在 open 后面,先有开启设备,才有图像分辨率调整
2- 分辨率太高 如上,将导致 imshow 窗口显示 黑屏。通过Debug跟踪,Frame 默认为 640 * 480 ;
如上调整参数后,就本机而言,Frame 也只能获取到 1360 * 768,用此数据设置,有显示但分辨率有很好改善,但依然不满意,起码不是黑窗口或低分 辨率 (我的采集卡连接电脑的分辨率是 1920 * 1080,设置不合适的分辨率就是黑的,合适(大概是同比例吧?)就可以)
3- 跑程序的笔记本的分辨率是 1366 * 768 ,也是最大设置值,是不是受这个限制?调整 笔记本 分辨率为 1280 * 720,原分辨率参数可以运行!
OBS软件可以设置更高图像分辨率,且更加清晰,就是屏蔽放不下,不拉伸是不是可以实现高分辨率?
标签:capture,set,读取,matFrame,分辨率,CAP,opencv,采集卡,Frame From: https://www.cnblogs.com/oujian/p/18078354