開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC2015 Community
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
OpenCV 3.0.0
問題(Question):
1. 為何只有在debug mode imwrite時會出現Access violation reading location問題
2. 為何debug mode出錯不是顯示(opencv_world300d.dll)而是(opencv_world300.dll)
餵入的資料(Input):
程式如下圖,有餵入一張圖且有成功show出來
http://i.imgur.com/ADKPUiL.png
預期的正確結果(Expected Output):
圖可以顯示出來也可以存檔
錯誤結果(Wrong Output):
如下面截圖所示
http://i.imgur.com/PDzNnFP.png
程式碼(Code):(請善用置底文網頁, 記得排版)
#include <iostream>
#include <opencv2/opencv.hpp>
#include <opencv2/features2d/features2d.hpp>
#include <cv.h>
#include <highgui.h>
using namespace cv;
int main(void) {
Mat img_object = imread("./test.png", CV_LOAD_IMAGE_GRAYSCALE);
namedWindow("test.png", CV_WINDOW_AUTOSIZE);
imshow("test.png", img_object);
waitKey(0);
imwrite("./out.jpg", img_object);
return 0;
}
補充說明(Supplement):
1. release mode不會
2. 我是用opencv build 好的lib&dll
3. 有在專案裡設定include lib dll等路徑與相依檔案