게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
매트랩 오류 질문입니다 도와주세요 ㅠㅠ
게시물ID : programmer_18520짧은주소 복사하기
작성자 : 프로그램시발
추천 : 0
조회수 : 558회
댓글수 : 1개
등록시간 : 2016/09/26 22:39:24
매트랩 oil effect 실습중에 

교재에 있는것과 똑같이 썼는데요

아래 빨갛게 표시된 부분에 자꾸 오류가 뜨는데 

왜 오류가 나는지 모르겠어요 ㅠㅠ

??? Attempted to access hist(0); index must be a positive integer or logical. 라고 뜨는데

문제가 뭐죵 ㅠㅠ 어떻게 바꿔야 되는건가요...??




% 영상 파일 경로명 지정.
filename = 'lena.jpg';

% RGB영상을 가져온다.
color_image = imread( filename );

% RGB to gray, 산술연산을 하기 위해 unit8에서 double로 바꾼다.
gray_image = double( rgb2gray( color_image ) );

% 영상의 크기를 가져온다.
[height, width] = size( gray_image);

%결과 영상에 대해 메모리 할당한다.
oil_effect_image = zeros( height, width );

%변수 설정
heightLength = 5; widthLength = 5;
halfHeightLength = floor(heightLength/2);
halfWidthLength = floor(widthLength/2);

for i=1:height
    for j=1:width
        %1차원의 256개 방을 만든다.
        hist = zeros(1, 256);
        var = gray_image(i,j);
        n=1; hist(var+1)=1;
        
       for p = -halfHeightLength:heightLength-halfHeightLength-1
           for q= -halfWidthLength:widthLength-halfWidthLength-1
               
               tmpHeight = mod((i + p + height), height) + 1;
               tmpWidth = mod((j + q + width), width) + 1;
               
               tmpVar = gray_image(tmpHeight, tmpWidth);
               if( p ~= 0 || q ~= 0 )
                   hist(tmpVar+1) = hist(tmpVar+1) + 1;
               end
               
               if( hist(tmpVar) > 0 )
                   n = hist(tmpVar);
                   finalVar = tmpVar; % 최종값
               end
           end
       end
       
       % 최종값을 삽입한다.
       oil_effect_image(i,j) = finalVar;
    end
end

% 파일로 저장한다.
imwrite( oil_effect_image, './lena_oil_effect.jpg');

% 원 영상과 결과 영상을 영상에 보이기 위해 8bit로 데이터형 변환한다.
gray_image = unit8( gray_image );
oil_effect_image = unit8( oil_effect_image );

%결과 영상을 보인다.
figure(1);
subplot(1,2,1); imshow( gray_image ); title( 'originalimage' );
subplot(1,2,2); imshow( oil_effect_image ); title( 'oil effect' );
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호