Необработено изключение при 0x74E9C9F1 в pa2sample.exe: 0xC0000005: нарушение на достъпа, изпълняващо местоположение 0x00000000

Опитвам се да използвам функцията MATLAB във VC++ MFC 2012, за да редактирам изображение. Получавам грешка, когато използвам mwArray. Това е моят код:

BYTE* im=new BYTE();
ImgProc(1,mwArray (im),mwArray(img));

Този код ще използва функцията MATLAB за преобразуване на изображение в изображение в сива скала. Променливата img е указателят BYTE към буфера на изображението. im променлива е изходното изображение.

ImgProc е функция на MATLAB:

function im=ImgProc(x)
  im=rgb2gray(x);           //convert to grayscale image

Ето функцията ImgProc C++ след преобразуване от MATLAB

ImgProc(int nargout, mwArray& im, const mwArray& x);

Оценявам, ако някой може да ми помогне. Заседнал съм от 2 дни.


person Tung Pham    schedule 22.10.2013    source източник


Отговори (1)


Какво мислите, че прави mwArray(img)? И как бихте очаквали да направи това, което искате? Единственият конструктор с един аргумент, който виждам, е:

mwArray(const char* str)

Описание

Създайте масив 1 на n от тип mxCHAR_CLASS с n = strlen(str) и инициализирайте данните на масива със знаците в предоставения низ.

За изображение ще трябва да използвате следния конструктор mwArray, за да създадете матрица:

mwArray(mwSize num_rows, mwSize num_cols, mxClassID mxID, mxComplexitycmplx)
person chappjc    schedule 22.10.2013
comment
Предполагам, че същото важи и за изходния аргумент im. - person Shai; 22.10.2013
comment
Да, щях да коментирам това, но реших, че може да е като OpenCV с изходни аргументи, разпределени от двигателя. Нещо подобно се случва с mxArrays в plhs, когато използвате mexCallMATLAB от MEX файл. Между другото, поздравления за твоя златен matlab. - person chappjc; 22.10.2013
comment
@chappjc благодаря ти. можете ли да ми обясните малко тези аргументи в mwArray()? - person Tung Pham; 22.10.2013
comment
Вижте страницата mwArray doc в MATLAB или ако имате вход, на mathworks.com - person chappjc; 22.10.2013
comment
@chappjc за съжаление го нямам. :( - person Tung Pham; 22.10.2013