2013-05-22 1 views
-2

카메라의 Canon SX - 120 IS를 통해 이미지를 캡처하고 있습니다. 그러나 Matlab에서 이러한 이미지를 처리하려고하면 "메모리 부족"오류가 표시됩니다. 내 이미지의 크기는 2736x3648x3 uint8 유형입니다. 크기는 1.05 MB입니다. 이 문제를 극복하는 방법? 이미지 크기 또는 이미지 크기 때문입니까? 품질을 그대로 유지하는 이미지의 크기를 줄이기위한 matlab 함수가 있습니까?matlab에있는 이미지에 "메모리 부족"오류가 발생했습니다.

+0

게시물에 많은 질문이 있습니다. 여러 가지 질문을하는 것이 좋습니다. 또한 "메모리 부족"문제가 발생하면 운영 체제 및 하드웨어에 대한 정보를 게시하는 것이 중요합니다. 또한, 귀하의 질문은 막연한입니다 : 어떻게 matlab에 이미지를 처리합니까? – Schorsch

답변

1

는 MATLAB 행렬로 읽을 메모리 내의 각 화상의 크기가 이미지를 처리하기 위해 때때로

2736x3648x3 bites = 29942784 bites ~ 30 MB 

것 것은이 경우에 크기가 더 큰 것, uint8에서 double 변환되어야 8 * 30 = 240MB. 이러한 이미지가 배열되어 있거나 광범위한 처리를 수행하는 경우 메모리가 부족할 수 있습니다. imresize 기능을 사용하여 이미지 크기를 줄일 수 있지만 이미지 품질이 손실됩니다.

파일에 저장된 이미지는 아마도 압축되어있을 것입니다. (그래서 디스크에 1.05MB 만 필요합니다.) 한 번에 적은 수의 이미지를 메모리로 읽어 봄으로써 이미지를 처리하는 것이 좋습니다.

+0

한 번에 하나의 이미지로만 작업하고 있습니다. imresize는 좋습니다. 감사. – soumyadip93

관련 문제