Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Unhandled exception at 0x774de3be (ntdll.dll)

I use a program I found in the tutorial on opencv but when I debug the program I get this error

Unhandled exception at 0x774de3be (ntdll.dll) in test_4.exe: 0xC0000005: Access violation reading location 0x580c8e68.

I am still a beginner in using opencv can anyone who know the solution help me? this is the code

#include "opencv2/imgproc/imgproc.hpp"

include "opencv2/highgui/highgui.hpp"

include "highgui.h"

include <stdlib.h>

include <stdio.h>

include <conio.h>

using namespace cv;

/// Global variables Mat src, erosion_dst, dilation_dst;

int erosion_elem = 0; int erosion_size = 0; int dilation_elem = 0; int dilation_size = 0; int const max_elem = 2; int const max_kernel_size = 21;

/* Function Headers */ void Erosion( int, void ); void Dilation( int, void* );

/* @function main */ int main( int argc, char* argv ) { /// Load an image src = imread( "D:/lena.jpg" ); // imshow("Image", src);

if( !src.data ) { return -1; }

/// Create windows namedWindow( "Erosion Demo", CV_WINDOW_AUTOSIZE ); namedWindow( "Dilation Demo", CV_WINDOW_AUTOSIZE ); cvMoveWindow( "Dilation Demo", src.cols, 0 );

/// Create Erosion Trackbar createTrackbar( "Element:\n 0: Rect \n 1: Cross \n 2: Ellipse", "Erosion Demo", &erosion_elem, max_elem, Erosion );

createTrackbar( "Kernel size:\n 2n +1", "Erosion Demo", &erosion_size, max_kernel_size, Erosion );

/// Create Dilation Trackbar createTrackbar( "Element:\n 0: Rect \n 1: Cross \n 2: Ellipse", "Dilation Demo", &dilation_elem, max_elem, Dilation );

createTrackbar( "Kernel size:\n 2n +1", "Dilation Demo", &dilation_size, max_kernel_size, Dilation );

/// Default start Erosion( 0, 0 ); Dilation( 0, 0 );

waitKey(0); return 0; }

/* @function Erosion */ void Erosion( int, void ) { int erosion_type; if( erosion_elem == 0 ){ erosion_type = MORPH_RECT; } else if( erosion_elem == 1 ){ erosion_type = MORPH_CROSS; } else if( erosion_elem == 2) { erosion_type = MORPH_ELLIPSE; }

Mat element = getStructuringElement( erosion_type, Size( 2erosion_size + 1, 2erosion_size+1 ), Point( erosion_size, erosion_size ) );

/// Apply the erosion operation erode( src, erosion_dst, element ); imshow( "Erosion Demo", erosion_dst ); }

/* @function Dilation */ void Dilation( int, void ) { int dilation_type; if( dilation_elem == 0 ){ dilation_type = MORPH_RECT; } else if( dilation_elem == 1 ){ dilation_type = MORPH_CROSS; } else if( dilation_elem == 2) { dilation_type = MORPH_ELLIPSE; }

Mat element = getStructuringElement( dilation_type, Size( 2dilation_size + 1, 2dilation_size+1 ), Point( dilation_size, dilation_size ) ); /// Apply the dilation operation dilate( src, dilation_dst, element ); imshow( "Dilation Demo", dilation_dst ); }

Unhandled exception at 0x774de3be (ntdll.dll)

I use a program I found in the tutorial on opencv but when I debug the program I get this error

Unhandled exception at 0x774de3be (ntdll.dll) in test_4.exe: 0xC0000005: Access violation reading location 0x580c8e68.

I am still a beginner in using opencv can anyone who know the solution help me? this is the code

#include "opencv2/imgproc/imgproc.hpp"

include "opencv2/highgui/highgui.hpp"

include "highgui.h"

include <stdlib.h>

include <stdio.h>

include <conio.h>

#include "opencv2/highgui/highgui.hpp" #include "highgui.h" #include <stdlib.h> #include <stdio.h> #include <conio.h> using namespace cv;

cv; /// Global variables Mat src, erosion_dst, dilation_dst;

dilation_dst; int erosion_elem = 0; int erosion_size = 0; int dilation_elem = 0; int dilation_size = 0; int const max_elem = 2; int const max_kernel_size = 21;

/* 21; /** Function Headers */ void Erosion( int, void void* ); void Dilation( int, void* );

/* ); /** @function main */ int main( int argc, char* char** argv ) { /// Load an image src = imread( "D:/lena.jpg" ); // imshow("Image", src);

src); if( !src.data ) { return -1; }

} /// Create windows namedWindow( "Erosion Demo", CV_WINDOW_AUTOSIZE ); namedWindow( "Dilation Demo", CV_WINDOW_AUTOSIZE ); cvMoveWindow( "Dilation Demo", src.cols, 0 );

); /// Create Erosion Trackbar createTrackbar( "Element:\n 0: Rect \n 1: Cross \n 2: Ellipse", "Erosion Demo", &erosion_elem, max_elem, Erosion );

); createTrackbar( "Kernel size:\n 2n +1", "Erosion Demo", &erosion_size, max_kernel_size, Erosion );

); /// Create Dilation Trackbar createTrackbar( "Element:\n 0: Rect \n 1: Cross \n 2: Ellipse", "Dilation Demo", &dilation_elem, max_elem, Dilation );

); createTrackbar( "Kernel size:\n 2n +1", "Dilation Demo", &dilation_size, max_kernel_size, Dilation );

); /// Default start Erosion( 0, 0 ); Dilation( 0, 0 );

); waitKey(0); return 0; }

/* } /** @function Erosion */ void Erosion( int, void void* ) { int erosion_type; if( erosion_elem == 0 ){ erosion_type = MORPH_RECT; } else if( erosion_elem == 1 ){ erosion_type = MORPH_CROSS; } else if( erosion_elem == 2) { erosion_type = MORPH_ELLIPSE; }

} Mat element = getStructuringElement( erosion_type, Size( 2erosion_size 2*erosion_size + 1, 2erosion_size+1 2*erosion_size+1 ), Point( erosion_size, erosion_size ) );

); /// Apply the erosion operation erode( src, erosion_dst, element ); imshow( "Erosion Demo", erosion_dst ); }

/* } /** @function Dilation */ void Dilation( int, void void* ) { int dilation_type; if( dilation_elem == 0 ){ dilation_type = MORPH_RECT; } else if( dilation_elem == 1 ){ dilation_type = MORPH_CROSS; } else if( dilation_elem == 2) { dilation_type = MORPH_ELLIPSE; }

} Mat element = getStructuringElement( dilation_type, Size( 2dilation_size 2*dilation_size + 1, 2dilation_size+1 2*dilation_size+1 ), Point( dilation_size, dilation_size ) ); /// Apply the dilation operation dilate( src, dilation_dst, element ); imshow( "Dilation Demo", dilation_dst ); }

}