본문 바로가기
openCV

[openCV] 메모리 관리 및 픽셀 엑세스

by _eunji_ 2020. 1. 11.

openCV상에서 메모리 관리 방법은 두 가지가 있다.

1. shallow copy

  • Matheader data 부분으로 구성되는데 shallow copy의 경우는 header에 포함되어 있는 데이터의 주소값만이 copy된다.
  • ‘=’이라는 등호를 사용하여 copy
  • copyTo라는 함수 사용 가능하다. (입력 매트릭스와 결과 매트릭스의 데이터 타입과 크기가 같으면 주소값만이 복사가 이루어지고 아니면 deep copy)

 

2. deep copy

  • Clone() 함수를 사용하여 copy
  • 데이터 변경 시 shallow copy와 다르게 deep copy를 수행하면 변경되지 않는다.

픽셀 접근 방법은 4가지가 있다.

1. by using at operator

Image.at<DATA_TYPE> (WANT_ROW,WANT_COL)

안정한 방식이긴 하지만 느리다는 단점이 있다.

2. by using pointer

At operator 보다 빠르다는 장점이 있다.

3. by using data member function

4. by using matiterator -> 가장 빠름

 

 

출처 - 컴퓨터 비전 한동대학교 황성수

http://www.kocw.net/home/cview.do?cid=1b1f5b73413060b5

'openCV' 카테고리의 다른 글

[openCV] 히스토그램 평활화  (0) 2020.01.18
[openCV] 밝기 값 변환  (1) 2020.01.18
[openCV] Drawing함수  (0) 2020.01.11
[openCV] Mat연산자  (0) 2020.01.11
[openCV] openCV기초  (0) 2020.01.07

댓글