본문 바로가기

전체 글

(41)
OpenCV 최종과제 OpenCV 최종과제 과제1. 라인인식 //라인인식 프로그램 #include #include int main() { IplImage *frame; //원본영상 프레임의 정보를 담고 있는 구조체의 시작주소 저장 IplImage *dst; //결과영상 프레임의 정보를 담고 있는 구조체의 시작주소 저장 int threshold = 180; //임계값 설정 int i, j, index; //반복문 첨자, 채널의 인덱스 저장할 변수 int width, height; //프레임의 가로,세로 int drawx=0, drawy=0; //한 프레임에서 검출된 픽셀의 x좌표의 합,y좌표의 합 int resultx = 0, resulty = 0; //라인의 무게중심 int nCount = 0; //검출된 픽셀의 갯수 int..
OpenCV를 이용한 영상처리::11장~12장 과제 11장 과제 과제1. 카메라로부터 들어오는 컬러영상에서 손(hand)영역을 검출하여 검정색으로 표시하고 손영역의 무게중심을 구하여 영상의 우측상단에 출력하고 중심점에 빨간색원을 그려주는 프로그램을 작성하시오. 또한, 명령창에도 중심의 좌표를 실시간으로 출력하라. #include #include #include //void on_mouseEvent(int event, int x, int y, int flags, void* param); int main() { IplImage *frame; // 원본영상 IplImage *dst; // 색 검출 영상 int width, height; // 창의 가로, 세로 int i, j, index;//반복문 첨자 unsigned char R, G, B;//각 채널에 해당..
OpenCV를 이용한 영상처리::4~6장 과제 4장 과제1 각자 카메라로 촬영한 정지영상을 이용하여 에제 4.1,4.2를 수행하라. 필요하면 그림판 등을 이용하여 영상파일의 포맷을 변환하라. 4.1예제 #incude #include void main() { IplImage *image; IplImage *R_plane; IplImage *G_plane; IplImage *B_plane; image = cvLoadImage("sj.jpg", -1); //원본영상 그대로 로드 cvNamedWindow("image", CV_WINDOW_AUTOSIZE); //영상 출력을 위한 윈도우를 만든다//사이즈 자동,크기조절x cvNamedWindow("R_channel", CV_WINDOW_AUTOSIZE);//0이면 조절가능 1은 조절안됨 cvNamedWindo..
OpenCV를 이용한 영상처리::1~3장 과제 1장과제 OpenCV 외 다양한 컴퓨터 비전 관련 오픈소스 라이브러리 조사하라. 관련 오픈소스 라이브러리 1) Luminoth 컴퓨터 비전을 위한 오픈소스 툴킷. 현재 물체 감지 및 이미지 분류를 지원. Google의 Machine Intelligence 프레임워크인 TensorFlow를 사용한 Python과 재사용 가능한 구성 요소로 복잡한 신경망을 구축하는 매우 유용한 라이브러리인 Deepmind에서 제작한 Sonnet으로 제작됨. 2) Emgu CV OpenCV라는 영상처리 라이브러리를 닷넷으로 사용할 수 있도록 만든 래퍼 라이브러리. 보통 C#으로 OpenCV를 사용하기 위해서 EmguCV 또는 OpenCVSharp를 사용. 3) simple CV 파이썬을 위한 이미지 프로세싱 라이브러리. 2장과..
C언어::최종과제 최종 과제 프로젝트1. [mylib.h 파일] #ifndef _MYLIB_H_ #define _MYLIB_H_ #include void data_input(int *a, int *b); int get_sum(int a, int b); void res_print(int res); #endif [main.c 파일] #include"mylib.h" int main() { int a, b; int res; data_input(&a, &b); res = get_sum(a, b); res_print(res); return 0; } [mylib.c 파일] #include"mylib.h" void data_input(int *a, int *b) { printf("정수 두 개 입력: "); scanf("%d%d", a,..
이것이 C언어다::18장 18장 파일 입출력 연습문제1 1. 2, 5번 2. 2,3,4번 3. FILE, "r", NULL 4. //연습문제 4 #include int main() { FILE *infp,*outfp; char stn[80], desn[80]; int ch; printf("복사할 파일명: "); scanf("%s", stn); printf("복사받을 파일명: "); scanf("%s", desn); infp = fopen(stn, "r"); if (infp == NULL) { printf("#%s파일이 없습니다\n", stn); return 1; } outfp = fopen(desn, "w"); if (outfp == NULL) { printf("#%s파일이 없습니다\n", desn); return 1; } wh..
이것이 C언어다::17장 17장 사용자 정의 자료형 연습문제1 1. struct book { char title[30]; char author[20]; int page; int price; }; 2. #include struct cracker { int price; int calories; }; int main() { struct cracker basasak; printf("바사삭의 가격과 열량을 입력하세요 : "); scanf("%d%d", &basasak.price, &basasak.calories); printf("바사삭의 가격 : %d원\n", basasak.price); printf("바사삭의 열량 : %dkcal\n", basasak.calories); return 0; } 3. 1) strcpy 함수는 첫 번째 인수..
이것이 C언어다::16장 16.1장 동적 할당 함수 연습문제1 1. double *weight= (double *) malloc(sizeof(double)); int *scores= (int *)malloc(10*sizeof(int)); char*string= (char*)malloc(80*sizeof(char)); 2. (max==NULL) free(max); 3. #include #include int main() { double *high; double *low; high = (double *)malloc(sizeof(double)); low = (double *)malloc(sizeof(double)); if ((high==NULL)||(low==NULL)) { printf("#으로 메모리가 부족합니다\n"); exit(..