Hi I want to use opencv to tell me the pixel values of a blank and white image
so the output would look like this
10001
00040
11110
00100
Here is my current code but I'm not sure how to access the results of the CV_GET_CURRENT
call.. any help ?
IplImage readpix(IplImage* m_image) {
cout << "Image width : " << m_image->width << "
";
cout << "Image height : " << m_image->height << "
";
cout << "-----------------------------------------
";
CvPixelPosition8u position;
CV_INIT_PIXEL_POS(position, (unsigned char*)(m_image->imageData), m_image->widthStep, cvSize(m_image->width, m_image->height), 0, 0, m_image->origin);
for(int y = 0; y < m_image->height; ++y) // FOR EACH ROW
{
for(int x = 0; x < m_image->width; ++x) // FOR EACH COL
{
CV_MOVE_TO(position, x, y, 1);
unsigned char colour = *CV_GET_CURRENT(position, 1);
// I want print 1 for a black pixel or 0 for a white pixel
// so i want goes here
}
cout << "
"; //END OF ROW
}
}
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…