no image
64bit 환경에서 Opencv 3.0 설치 시 에러
64bit 환경에서 OpenCV 3.0 설치 후 run 할 때 에러 해결 법 1. 컴퓨터 사양이 64bit라고 하더라도 링크 빌드 설정은 컴파일러 버전에 따라 x86으로 해준다.(저는 컴파일러가 32비트 기준이였어요) 컴퓨터 사양이 32비트인지 64비트인지에 따라 다르게 설정해야 할 것 같지만 전혀 아니다.자신의 컴파일러에 따라 x86이나 x64로 설정해주어야한다.근데 보통은 x86을 사용한다. 위 사진은 잘못된 설정의 예시이다. x64로 설정하라는 설치법 보고 실행해보니계속 에러가 떠서 개고생했다. 2. 응용프로그램 0xb000007b 시작할 수 없다는 오류C:\opencv\build\x86\vc12\bin에서 모든 dll 파일을C:\Windows\SysWOW64 으로 복사해준다. 3. 컴퓨터에 ope..
2016.01.01
no image
lnk2019 외부 기호 참조 위치 함수 에서 확인 하지 못했습니다
위와 같이 이러한 에러가 날 때 Error1error LNK2019: unresolved external symbol _cvCreateImage referenced in function _mainError2error LNK2019: unresolved external symbol _cvReleaseImage referenced in function _mainError3error LNK2019: unresolved external symbol _cvGetSize referenced in function _mainError8error LNK2019: unresolved external symbol _cvRetrieveFrame referenced in function _mainError9error LNK20..
2016.01.01
no image
윤곽(contour) 추출과 에지(edge) 추출
소스코드 #include #include #define Width780 #define Height1024 struct stMap{ unsigned char r; unsigned char g; unsigned char b; } Map[Height][Width]; void Img2Aray(IplImage* img) { for (int i = 0; iheight; i++){ for (int j = 0; jwidth; j++){ Map[i][j].r = img->imageData[i*img->widthStep + j*img->nChannels + 2]; Map[i][j].g = img->imageData[i*img->widthStep + j*img->nChannels + 1]; Map[i][j].b = img-..
2015.12.29
no image
Threshold함수를 이용한 간단한 영상 이진화
소스코드 #include #include void main(){ int i, threshold = 128; IplImage* image = 0; IplImage* output = 0; IplImage* gray = 0; CvCapture* capture = cvCaptureFromCAM(0); cvNamedWindow("original", 0); cvNamedWindow("Thresh_binary",0); cvCreateTrackbar("T", "seohee-camera", &threshold, 255, NULL); while (1){ cvGrabFrame(capture); image = cvRetrieveFrame(capture); cvShowImage("original", image); if (!ou..
2015.12.29
no image
OpenCV 자료구조
2.1 CvPoint, CvScalar, CvSize, CvRect CvPoint 영상을 행렬형태의 2차원 화소들의 집합으로 생각할 수 있는데 OpenCV는 각 화소 또는 2차원 점의 좌표를 표현하기 위해 CvPoint, CvPoint2D32f, CvPoint2D64f 등의 구조체를 사용한다. (각 int형 2D 화소 위치, float형 2D 화소 위치, double형 2D 화소 위치를 뜻함) CvScalar 화소의 밝기 값 또는 컬러 값 표현을 위해 존재하는 함수이다. 이 함수는 4개의 인수(val0, val1, val2, val3)를 가지며, val0은 반드시 가져야하고, 나머지는 지정하지 않을 경우 0으로 간주된다. ScalarAll 함수는 하나의 인수 val0123을 입력받아 배열 val에 동일한..
2015.12.29
no image
Visual Studio 2013에 OpenCV 3.0 설치하기
설치환경 윈도우 32비트 visual studio 2013 opencv 3.0 1. OpenCV 라이브러리 다운 먼저 아래 링크로 들어가서 opencv 라이브러리를 다운받습니다. http://opencv.org/ 저는 아래 화면과 같이 C:\ 에 opencv를 다운받았습니다. opencv 폴더에 들어가면 build, sources 폴더 두개가 생깁니다. 2. 환경변수 설정 환경변수 설정 중요합니다. 저는 32비트, visual studio 2013을 사용중입니다. 내컴퓨터 - 속성 - 고급시스템 설정 - 환경변수 로 들어가 준 뒤, 아래 칸인 시스템변수에서 Path를 편집해줍니다. 저는 C:\에 opencv 가 존재하므로 경로를 위와 같이 적어주었습니다. 여기서 주의해야할 점은 이미 적혀있는 경로를 건들..
2015.12.28
no image
OpenGL 콜백 프로그래밍
OpenGL 콜백 프로그래밍 저번 포스팅에서는 윈도우 뷰포트 설정을 살펴보았다. 윈도우 뷰포트 설정을 하지 않으면 자동으로 뷰포트 설정이 되는데, 사용자가 창 위치를 변경한다던지, 창 크기를 늘리는 등의 행위를 했을 때 동적으로 반응하는 콜백함수가 있어야 물체가 왜곡되지 않는다. 오늘 포스팅에서는 이러한 사용자의 행위에 대해 동적으로 반응하는 콜백 프로그래밍을 다루려고 한다. 프로그래머는 리세이프 콜백(Reshape Callback) 함수를 통해 이러한 이벤트에 어떻게 대응할 것인지를 원하는 대로 명시할 수 있다. 리셰이프 이벤트를 등록하기 위한 콜백 함수 프로토타입은 다음과 같다. void glutReshapeFunc(void (*func) (int width, int height)); 다소 복잡해 보..
2015.11.22
no image
OpenGL 사각형그리기 예제2 - glViewport
OpenGL 사각형그리기 예제2 소스코드 #include #include #include #include void MyDisplay(){ glClear(GL_COLOR_BUFFER_BIT); // GL상태변수 설정, 프레임 버퍼를 초기화 // 초기화 될 색은 glutClearColor에서 사용된 색 glViewport(0, 0, 300, 300); glColor3f(1.0, 1.0, 1.0); // glBegin(GL_POLYGON); // 입력요소 기본정의 glVertex3f(-0.5, -0.5, 0.0); glVertex3f(0.5, -0.5, 0.0); glVertex3f(0.5, 0.5, 0.0); glVertex3f(-0.5, 0.5, 0.0); glEnd(); glFlush(); } int m..
2015.11.22
no image
OpenGL 사각형 그리기 예제
OpenGL 간단한 사각형 그리기 예제 소스코드 #include #include #include #include void MyDisplay(){ glClear(GL_COLOR_BUFFER_BIT); // 사각형은 glBegin()과 glEnd() 사이에서 정의됨 glBegin(GL_POLYGON); // 아래 제시된 Vertex들이 다각형(Polygon)을 이루고있음을 정의 // 윈도우 한가운데는(0,0,0)이며 윈도우 우상단은(1,1,0)이다. glVertex3f(-0.5, -0.5, 0.0); glVertex3f(0.5, -0.5, 0.0); glVertex3f(0.5, 0.5, 0.0); glVertex3f(-0.5, 0.5, 0.0); // 이때 Vertex로 그리는 순서는 시계 반대방향임을 주의..
2015.11.22
GLUT의 윈도우 기능
함수명 기능설명 윈도우 초기화 glutInit() 윈도우 운영체제와 세션 연결 glutInitWindowPosition() 윈도우 위치 설정 glutInitWindowSize() 윈도우 크기 설정 glutInitDisplayMode 디스플레이 모드 설정 윈도우 관리 glutSetWindowTitle() 윈도우 타이틀 설정 glutCreateWindow() 새로운 윈도우 생성 glutReshapeWindow() 크기 변경에 따른 윈도우 조정 glutPostRedisplay() 현 윈도우가 재생되어야 함을 표시 glutSwapBuffers() 현 프레임 버퍼 변경 1. glutInit(int *argc, char **argv)GLUT 라이브러리를 초기화 한 후 윈도우 시스템과 세션을 연다. 2. glutIn..
2015.11.22
html
http://charlesk.tistory.com/14
2015.11.14
[소프트웨어 공학] StateDiagram(상태 다이아그램) 이란 ?
StateCharts Diagram 이란 ? “하나의 객체를 대상으로 생존기간 동안 가질 수 있는 객체 상태의 변화를 분석한 다이어그램”이다.이 다이어그램은 객체 상태와 함께 객체 상태 변화를 유발하는 이벤트와 동작(Action/Activity)도 함께 정의한다. 이러한 요소가 정의된 StateCharts Diagram을 통해 “객체 O는 이벤트E에 의해 상태S로 변화하고 그 상태에서 A라는 행위를 한다” 라고 말할 수 있다. StateCharts Diagram을 사용하는 목적- 객체 상태변화를 상세히 분석 할 수 있다: 상태차트 다이어그램은 객체 하나를 대상으로 생성-소멸 기간 중에 다양하게 가질 수 있는 상태를 분석하는 목적으로 작성된다. 시스템에서 많은 객체들은 생성에서 소멸 단계까지 간단한 상태를..
2015.11.13