예를들며 아래와 같은 코드를 써서 까만 도스창으로 어찌저찌 하는게 제겐 이해하기가 더 쉽네요.
#include <stdio.h>
void main(void)
{
int i, j;
unsigned char OrgImg[256][256];
// 디스크에서 영상데이터 읽기
FILE *infile = fopen("Lenna.raw", "rb");
if (infile == NULL) return;
fread(OrgImg, sizeof(char), 256*256, infile);
fclose(infile);
// 역상계산을 위한 영상처리
for (i = 0; i < 256; i++)
{
for (j = 0; j < 256; j++)
{
OrgImg[i][j] = 255 - OrgImg[i][j];
}
}
// 하드디스크에 영상데이터 쓰기
FILE *outfile = fopen("Lenna_inv.raw", "wb");
fwrite(OrgImg, sizeof(char), 256*256, outfile);
fclose(outfile);
}
감사합니다!
이대호; 박영태 공저.
인터비젼 2008
이책을 함 읽어보심이 좋으실 것 같습니다.
저도 아직 초보긴한데 ㅎ.. 그리고 역상보다는 일반적인 이미지를 먼저 불러오는것을 먼저해보세요
모자쓴 Lena의 이미지는 참 많은 사람들이 이미지 프로세싱 할 때 보게 되는 사진인 것 같습니다.
저도 그렇고요.
님께서 말씀하시는 MFC를 배제하는 방법적 접근이 근더더가가 없어서 처음에 시작할때, 훨씬 좋습니다.
나중에도 마찬가지 이고요.
필요한 부분만 C 로 되어있으면, 펌웨어에서 가져다 쓰기도 쉽고요.
다만, 계산/변환/기타등등... 된 이미지를 확인하는 절차가 매번 디버깅할때마다 필요할것 같은데,
저장된 이미지에서 화면에 보여주는 소스는 인터넷에 많이 있어서 그런 툴을 사용하면 좋습니다.
codeguru 나 codeproject 사이트에 들러보세요.
괜찮은 소스를 구할수 있을겁니다.
Source내용을 보기에는 일단 X*Y가 255*255 사이즈 이고
"255-"와 같이 255를 기준한다는건 Color가 아닌 흑백 이미지이고
화소의 명암값을 반전 시키는것 같습니다.
흑백 Image의 Inverse 처리 인것 같습니다 ^^
영상 처리에 관심이 있으시면 http://www.OpenCV.co.kr 를 추천합니다
이미지처리, 패턴인식, 문자인식, 모션처리, 증강현실 등 많은 자료가 있습니다 ^^
MFC로 클래스에 추가적으로 소스를 작성하면서 공부하는 방법이 편하지 않을까 생각됩니다.
저역시 대학다니면서 영상처리를 조금 한 적이 있는데 거의 대부분 MFC를 사용하여 소스를 작성하였습니다.
소스를 일단 보면 이미지 포멧이 raw이고
for구문을 두개 사용하여 256*256 사진 정보값을 얻습니다.
색은 0~255사이의 값을 가지므로
OrgImg[i][j] = 255 - OrgImg[i][j];은 주석처리에 나와있듯이
색을 반전하는 소스가 되네요 ~
책을 한권사서 공부하시는게 아마 좋을 것입니다 ^^ㅎ