mfc-imageProcessing 바이너리 이미지를 만들어보자 2018, May 29 이전까지 밝기와 contrast 를 조절하는 작업을 했다. 픽셀 단위 작업 밝기 조절 콘트라스트 조절 흑백이미지를 바이너리화 영역 단위 작업 이진 이미지 침식 이진 이미지 팽창 이제 흑백이미지를 바이너리화 하는 작업을 해보자. 흑백이미지 바이너리화 ImageProc.h class ImageProc { ... public: static void Binarization(unsigned char* image_gray, const int width, const int height, const unsigned char threshold); } ImageProc.cpp // threshold 값보다 작으면 0 크면 255를 만드는 함수이다. void ImageProc::Binarization(unsigned char* image_gray, const int width, const int height, const unsigned char threshold) { for(int i=0; i<width*height; i++) { if(image_gray[i] < threshold) image_gray[i] = 0; else image_gray[i] = 255; } } ImageProcessingDoc.h class CImageProcessingDoc : public CDocument { ... public: afx_msg void OnPixelprocessingBinarization(); } ImageProcessingDoc.cpp void CImageProcessingDoc::OnPixelprocessingBinarization() { ImageProc::Binarization(m_Images[cur_index].image_gray, m_Images[cur_index].width, m_Images[cur_index].height, 127); CImageProcessingView* pView = (CImageProcessingView*)((CMainFrame*)(AfxGetApp()->m_pMainWnd))->GetActiveView(); pView->SetDrawImage(m_Images[cur_index].image_color, m_Images[cur_index].image_gray, m_Images[cur_index].width, m_Images[cur_index].height); pView->OnInitialUpdate(); } 실행하면 다음과 같은 화면이 나온다. Please enable JavaScript to view the comments powered by Disqus.