img1.bmp, img2.bmp,..., img10.bmp 이미지들이 한 폴더에 들어있다고 가정해보자. 이 이미지들을 읽어서 어떠한 영상처리 작업을 시행하려고 한다. for문을 사용해서 img1.bmp부터 img10.bmp까지 읽어내려면 어떻게 해야할까? 아래와 같이 코드를 작성하면 된다.
이 .m 파일은 img1.bmp,..., img10.bmp와 같은 폴더 내에 들어있어야 한다.
여기서 가장 중요한 것은 바로 num2str 함수다. num2str함수는 이름에서도 알 수 있듯이 number to string, 즉 숫자형을 문자형으로 변환해준다. 따라서 for 문에 처음 들어섰을 때 i가 숫자형으로 1이었던 것을 문자형으로 바꿔서 '1'이 되게 한다. 그리고 그 다음 행에서 ['img', '1', '.bmp'] = 'img1.bmp'을 imread 함수가 읽어낸다.
이 방식은 상당히 유용하다. 아마도 영상처리를 하시는 분들이라면 자주 사용하고 계실 것이라 생각한다.
num2str과 정반대의 역할을 하는 함수는 str2num이다. string to number, 즉 문자형을 숫자형으로 변환해주는 것이다. 굳이 예제를 첨부하지는 않겠다.
'Dev > matlab' 카테고리의 다른 글
[MATLAB] 다양한 정도로 압축된 jpeg 이미지 만들기, imwrite 함수 (0) | 2019.07.03 |
---|---|
[MATLAB] 표준화된 z-점수 산출하기, zscore 함수 (0) | 2019.06.14 |
[MATLAB] 야구 게임, 0과 9사이 숫자 3개 맞추기 (4) | 2019.04.26 |
[MATLAB] 문자열에서 필요한 데이터만 추출하기, sscanf 함수 (2) | 2019.04.18 |
matlab에서 문자열 비교하기, strcmp 함수 (0) | 2019.04.12 |
matlab을 이용해서 파일 복사하기, copyfile 함수 (0) | 2019.04.11 |
matlab을 통해 txt 파일(메모장)에 기록을 남기려면?, fprintf 함수 (0) | 2019.04.11 |
Matlab용 CNN 라이브러리 MatConvNet 설치하기 (win10 + visual studio 2015 + Matlab 2018b + CUDA 8.0 + cuDNN 5.1) (2) | 2019.02.25 |