2013-07-14 68 views
3

予編譯和安裝的OpenCV庫根據官方教程以及下面的鏈接opencv-installationOpenCV的錯誤:斷言失敗(size.width> 0 && size.height> 0)

我使用的樣本代碼提供在官方教程使用Eclipse CDT的

#include <cv.h> 
#include <highgui.h> 

using namespace cv; 

int main(int argc, char** argv) 
{ 
    Mat image; 
    image = imread(argv[1],1); 

    if(argc != 2 || !image.data) 
    { 
    printf("No image data \n"); 
    return -1; 
    } 

    namedWindow("Display Image", CV_WINDOW_AUTOSIZE); 
    imshow("Display Image", image); 

    waitKey(0); 

    return 0; 
} 

編譯後我得到以下錯誤:

OpenCV Error: Assertion failed (size.width>0 && size.height>0) in imshow, file /home/hp/apps/opencv-2.4.6.1/modules/highgui/src/window.cpp, line 261 
terminate called after throwing an instance of 'cv::Exception' 

what(): /home/hp/apps/opencv-2.4.6.1/modules/highgui/src/window.cpp:261: error: (-215) size.width>0 && size.height>0 in function imshow 

在此先感謝

+1

此代碼適用於我。嘗試與另一個圖像... – JonesV

+0

它的一個標準的代碼,我不認爲它的代碼錯誤,而不是我的配置 – evolutionizer

+0

你有沒有嘗試過另一個圖像? – JonesV

回答

0

你試圖加載一個.PNG文件嗎?你需要爲它加載一個特定的插件。如果可能的話,請使用.bmp或.jpg文件。

0

我有同樣的問題 - 最後事實證明,這是配置問題。最後,由於一些奇怪的錯誤(Eclipse CDT),我甚至刪除了項目並使用適當的配置設置創建了新項目。

2

我有類似的問題。你可以添加類似的代碼,也許可以解決它。由於捕獲大小導致此問題

VideoCapture cap; 
cap.set(CV_CAP_PROP_FRAME_WIDTH, 640); 
cap.set(CV_CAP_PROP_FRAME_HEIGHT, 480); 

cap.read(image); 
相關問題