C++?OpenCV裁剪圖片時(shí)發(fā)生報(bào)錯(cuò)的解決方式
從相機(jī)獲取圖像時(shí)直接處理會(huì)報(bào)錯(cuò),讀取本地視頻不會(huì)報(bào)錯(cuò)
原代碼
g_mvCamera.GetImage(m_matCameraFrame); //開(kāi)始OCR OCRImg();
將從相機(jī)捕獲的幀直接imwrite進(jìn)本地,再在OCR中imread讀取本地路徑下的圖片,報(bào)錯(cuò)消失
g_mvCamera.GetImage(m_matCameraFrame);
imwrite("img6.bmp", m_matCameraFrame);
//開(kāi)始OCR
OCRImg();對(duì)本地視頻進(jìn)行裁剪不會(huì)報(bào)錯(cuò),對(duì)相機(jī)實(shí)時(shí)獲取的幀進(jìn)行裁剪會(huì)報(bào)錯(cuò)
原代碼(部分)
g_mvCamera.GetImage(frame0); //對(duì)視頻進(jìn)行區(qū)域截取,選其中一部分進(jìn)行處理,左上角起始坐標(biāo)以及整個(gè)新圖片的大小 Rect rect; rect.x = 0; rect.y = 260; rect.height = 680; rect.width = 1260; frame = Mat(frame0, rect);
運(yùn)行結(jié)果

仔細(xì)看一下變量窗口, 會(huì)發(fā)現(xiàn)是由于有時(shí)候程序并沒(méi)從相機(jī)中獲取到frame就對(duì)frame0進(jìn)行傳值,就直接報(bào)錯(cuò)了


所以修改代碼,使用do while循環(huán),確保frame0獲取到之后,再進(jìn)行下一步處理
do {
g_mvCamera.GetImage(frame0);
} while (frame0.empty());
//對(duì)視頻進(jìn)行區(qū)域截取,選其中一部分進(jìn)行處理,左上角起始坐標(biāo)以及整個(gè)新圖片的大小
Rect rect;
rect.x = 0;
rect.y = 260;
rect.height = 680;
rect.width = 1260;
frame = Mat(frame0, rect);總結(jié)
到此這篇關(guān)于C++ OpenCV裁剪圖片時(shí)發(fā)生報(bào)錯(cuò)的文章就介紹到這了,更多相關(guān)C++ OpenCV裁剪圖片報(bào)錯(cuò)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 15種?C++?常見(jiàn)報(bào)錯(cuò)原因分析
- c++報(bào)錯(cuò)問(wèn)題解決方案lvalue required as left operand of assignment
- 解決pip?install?dlib報(bào)錯(cuò)C++11?is?required?to?use?dlib
- 如何基于C++解決RTSP取流報(bào)錯(cuò)問(wèn)題
- Python3安裝模塊報(bào)錯(cuò)Microsoft Visual C++ 14.0 is required的解決方法
- 解決安裝mysqlclient的時(shí)候出現(xiàn)Microsoft Visual C++ 14.0 is required報(bào)錯(cuò)
- C或C++報(bào)錯(cuò):ld returned 1 exit status報(bào)錯(cuò)的原因及解決方法
相關(guān)文章
C語(yǔ)言深入探究sizeof與整型數(shù)據(jù)存儲(chǔ)及數(shù)據(jù)類型取值范圍
在main函數(shù)中,sizeof是可以正常工作的,但是在自定義函數(shù)中就不可以了。所以本文將為大家詳細(xì)講解一下關(guān)鍵字sizeof、整型數(shù)據(jù)存儲(chǔ)深入、數(shù)據(jù)類型取值范圍深入2022-07-07
C++中function包裝器的應(yīng)用實(shí)例詳解
這篇文章主要介紹了C++中function包裝器的相關(guān)資料,std::function是C++11引入的一個(gè)模板類,用于封裝任何可調(diào)用對(duì)象,使得函數(shù)能夠像對(duì)象一樣傳遞、存儲(chǔ)和調(diào)用,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-12-12
C++中vector容器的常用操作方法實(shí)例總結(jié)
vector容器一般被用作創(chuàng)建動(dòng)態(tài)數(shù)組,動(dòng)態(tài)數(shù)組就像Python中的list結(jié)構(gòu)一樣,可以比普通數(shù)組擁有更豐富操作方法,下面就為大家整理了一些最常用的操作:2016-05-05
Java C++ 算法題解leetcode1582二進(jìn)制矩陣特殊位置
這篇文章主要為大家介紹了Java C++ 算法題解leetcode1582二進(jìn)制矩陣特殊位置示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09
Qt利用QSortFilterProxyModel代理實(shí)現(xiàn)自定義排序與聯(lián)合過(guò)濾
QsortFilterProxyModel類用來(lái)為model和view之間提供強(qiáng)大的排序和過(guò)濾支持。這篇文章將利用QSortFilterProxyModel代理實(shí)現(xiàn)自定義排序與聯(lián)合過(guò)濾,需要的可以參考一下2022-11-11
C語(yǔ)言用遞歸函數(shù)實(shí)現(xiàn)漢諾塔
大家好,本篇文章主要講的是C語(yǔ)言用遞歸函數(shù)實(shí)現(xiàn)漢諾塔,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下2022-01-01

