-
當(dāng)前位置:首頁 > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
1、c語言錯誤
2、cv2.error: /io/opencv/modules/imgproc/src/color.cpp:10638: error: (-215) scn == 3 || scn == 4 i
4、opencv,vc++6.0,編譯程序老是出錯和警告; warning D4002 : ignoring unknown option '/Qwd167'
1>openCVTest.obj : error LNK2019: 無法解析的外部符號 _cvReleaseImage,該符號在函數(shù) _wmain 中被引用
1>openCVTest.obj : error LNK2019: 無法解析的外部符號 _cvDestroyWindow,該符號在函數(shù) _wmain 中被引用
1>openCVTest.obj : error LNK2019: 無法解析的外部符號 _cvWaitKey,該符號在函數(shù) _wmain 中被引用
1>openCVTest.obj : error LNK2019: 無法解析的外部符號 _cvShowImage,該符號在函數(shù) _wmain 中被引用
1>openCVTest.obj : error LNK2019: 無法解析的外部符號 _cvNamedWindow,該符號在函數(shù) _wmain 中被引用
1>openCVTest.obj : error LNK2019: 無法解析的外部符號 _cvLoadImage,該符號在函數(shù) _wmain 中被引用
- 這種錯誤很大概率是因為需要的庫并沒有添加進去,但是我仔細檢查了好幾遍,需要的opencv的庫我都添加了。鼓搗了半天,最后發(fā)現(xiàn)原來是我的配置設(shè)錯了,我的電腦是64位的,但卻設(shè)置成了win32。修改方法為在配置中添加一個x64的選項,然后應(yīng)用該選項即可。
detection.cpp(11): fatal error C1010: 在查找預(yù)編譯頭時遇到意外的文件結(jié)尾。是否忘記了向源中添加“#include "StdAfx.h"”?
- 解決方法,進行如下圖所示的修改。將預(yù)編譯頭選項由“使用(/Yu)”改為“不使用預(yù)編譯頭”
OpenCV Error: Assertion failed (scn == 3 || scn == 4) in cv::cvtColor, file ........opencvmodulesimgprocsrccolor.cpp, line 3737 gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) cv2.error: ........opencvmodulesimgprocsrccolor.cpp:3737: error: (-215) scn == 3 || scn == 4 in function cv::cvtColor
- 錯誤原因是因為你的輸入文件不合法,正確的image應(yīng)該至少有3或者4個channel,但是我通過image.shape只顯示為2,說明它是一個灰度圖像。奇怪的是我讀入的文件確實是一個彩色圖像,怎么會顯示是灰度圖像呢?然后我嘗試把讀取的圖像再通過cv2.imwrite()函數(shù)寫出來,果然重新寫出來的圖像是一張灰度圖像,那到底是哪個地方出的錯?因為cv2.cvtColor()前面就只有一個cv2.imread()的函數(shù),莫非是該函數(shù)讀取圖像時出的問題?該函數(shù)只有兩個參數(shù),第一個是要讀取的圖像的路徑,第二個是個0。但是自己對這第二個參數(shù)0卻是不明覺厲,究竟這個參數(shù)是干啥用的。趕緊上網(wǎng)查找,果然是這個0搞的鬼。
errorc1010
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于errorc1010的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。
ChatGPT國內(nèi)免費在線使用,一鍵生成原創(chuàng)文章、方案、文案、工作計劃、工作報告、論文、代碼、作文、做題和對話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細,有微信小程序端、在線網(wǎng)頁版、PC客戶端
官網(wǎng):https://ai.de1919.com
本文目錄:
一、c語言錯誤
應(yīng)該是預(yù)編譯頭設(shè)置的問題
1、右鍵點工程名,選設(shè)置,然后選c/c++屬性頁,再選catagory選單中選 precompiled header ,將選項置成no use 或者autometic
2、好像是工程中設(shè)置了預(yù)編譯頭文件,但你的程序中事實上沒有添加這個頭文件. 主要是stdafx.h Project Setting->C/C++ -> Category(Precompiled header)->not using Precompiled header試試
下面是msdn的說法: Fatal Error C1010 unexpected end of file while looking for precompiled header directive A precompiled header was specified, but it did not contain a precompiled header directive. This error can be caused by specifying an incorrect file as a header file, or by specifying an include file with the /Yu (Use Precompiled Header) command line option that is not listed in the source file as an include file.
二、cv2.error: /io/opencv/modules/imgproc/src/color.cpp:10638: error: (-215) scn == 3 || scn == 4 i
1. 編譯第一個opencv程序,出現(xiàn)了如下的錯誤。
[plain] view plain copy
2. fatal error C1010錯誤,具體錯誤信息如下:
[plain] view plain copy
3. 在Visual Studio中讀取文件或者haarcascade_frontalface_alt.xml時文件的格式問題。正確的路徑格式應(yīng)為"C:/path"或者為"C:\path",Windows下默認的"C:path"這樣的格式是錯誤,會導(dǎo)致一些讀取文件上的錯誤。
4. Error opening file (../../modules/highgui/src/cap_ffmpeg_impl.hpp:529)錯誤
主要原因是讀取的文件的路徑不正確,結(jié)合第三個錯誤進行改正。
5. 通過cv.cvtColor()函數(shù)將圖像轉(zhuǎn)為灰度圖像時發(fā)生錯誤,錯誤信息如下:
[plain] view plain copy
Python:cv2.imread(filename[, flags])
這是該函數(shù)的語法。這個flags參數(shù)指定加載圖像的color類型:如果大于0,返回一個3通道的彩色圖像;如果為0,返回一個灰度圖像;如果小于0,則返回加載的圖像本身(with alpha channel)。
將第二個參數(shù)0去掉后,果然問題就解決了。
6. imread()讀取錯誤
首先看看是不是文件的路徑錯誤,如果路徑正確的情況下仍然出現(xiàn)錯誤,很有可能是配置opencv的dll的問題,比如你的程序運行的是debug,但是opencv的dll卻是release版本;或者運行的是release,但是opencv的dll卻是debug版本。一句話就是運行和dll的版本不匹配。
三、VS編譯錯誤,如何解決
在查找預(yù)編譯頭時遇到意外的文件結(jié)尾。是否忘記了向源中添加“#include "stdafx.h"”? 編譯器已經(jīng)估計錯誤所在,你根據(jù)提示查找錯誤,在源文件中看看有沒有#include "stdafx.h"這句話
四、opencv,vc++6.0,編譯程序老是出錯和警告; warning D4002 : ignoring unknown option '/Qwd167'
你好:
error C1010: unexpected end of file while looking for precompiled header directive.
可能原因為工程中 stdafx.h 未包含。
//
在VC 6.0中編譯c++程序時報該錯原因為需要一個預(yù)編譯的文件stdafx.h, 如果不需要編譯該頭文件的話,只需要打開seting 頁面設(shè)置中在c/c++欄,選擇PreCompiled headers,然后設(shè)置第一選項,選擇不使用預(yù)編譯頭,解決這個問題。
或者
直接打開dsp工程文件,找到 /Yu"stdafx.h"去掉即可。
//
一般來說,在編譯某個文件時,往往發(fā)現(xiàn)編譯器指向某個源碼文件的末尾,并且提示以上信息時,直接在cpp頂上加一項"stdafx.h".
而且不管文件所處是否和stdafx.h文件在同一目錄中。編譯后即可通過,沒必要去修改編譯開關(guān)。一般而言:預(yù)編譯功能是解決大量標(biāo)頭文件重復(fù)編譯的問題。
在stdafx.h頭中,我們一般把那些公用的頭文件放置在其中。特別是調(diào)用dll組件包時,dll引入到工程中。
以上就是關(guān)于errorc1010相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進行咨詢,客服也會為您講解更多精彩的知識和內(nèi)容。
推薦閱讀:
ChatGPT中文版下線(chatpartner下載2020)