• Tistory
    • 태그
    • 위치로그
    • 방명록
    • 관리자
    • 글쓰기
Carousel 01
Carousel 02
Previous Next

'매트랩'에 해당되는 글 2건

  • 2014.01.16 [matlab] mfile을 이용하여 function을 만들어보자.
  • 2014.01.08 Matlab을 이용한 영상처리 / 영상처리를 위한 Matlab Function (2)

[matlab] mfile을 이용하여 function을 만들어보자.

Programming/Matlab 2014. 1. 16. 17:30





프로그래밍의 기초가 되는 함수를 작성하는 방법이다.


matlab의 함수나 프로그램들은 전부다 mfile 이란 것을 이용하여 작성되고 불려져서 사용된다.


새로운 mfile을 만들기 위해 좌측 상단의 New Script 버튼을 누르면 새로운 스크립트를 작성할 수 있는


빈 창이 뜬다.


이제부터 함수나 프로그램의 flow는 이 스크립트 창에서 작성되고 저장되어 진다.





워낙 간단한 기초만 설명하고 있어서 위의 사진 한장으로 모든것이 이해 되겠지만 살짝 집고 가자.


matlab 에서 함수의 선언은 아래와 같은 형태로 한다.


function [출력변수] = 함수이름(입력변수)


주의할점은 출력변수는 대괄호사이에 작성하고 입력변수는 소괄호 사이에 작성한다는 점이다.


함수선언 위에 삽입되는 annotation은 help명령어로 해당 함수를 불렀을때 출력되는 


해당 함수에 대한 요약문이다.


이 글을 작성하다 새로 알게된 사실인데 함수선언 위에 설명문이 여러 문단으로 작성 될 경우


가장 첫번째 문단만이 출력된다.


함수의 내용은 각자 필요에 따라 작성하되 내부에서 입력변수 를 이용하여 출력변수에 대입만 해주면 된다.


위에서는 간단하게 숫자 두개를 입력받아서 더한 결과를 출력해 주는 함수를 작성하였다.


입력값에 대한 예외처리는 생략하기로 한다.


함수를 다 작성한후 저장을 누르면 파일명은 함수명이 Default로 설정 된다.



이렇게 작성된 함수는 다른 mfile 이나 Command Window 에서 사용이 가능하다 .


사용법은 C 에서 사용하던것과 동일하다.



A 와 B 에 각각 3과 4를 입력받아 함수에 대입하고 결과값으로 7을 return 받은 모습을 확인할 수 있다.


저작자표시비영리

'Programming > Matlab' 카테고리의 다른 글

plot 관련 명령어 모음.  (0) 2014.04.13
[matlab] mfile을 이용하여 function을 만들어보자.  (0) 2014.01.16
Matlab을 이용한 영상처리 / 영상처리를 위한 Matlab Function  (2) 2014.01.08
Matlab 에서 사용되는 주요 함수 모음.  (0) 2013.12.31
블로그 이미지

매직블럭

작은 지식들 그리고 기억 한조각

Tag function, matlab, mfile, 매트랩, 매트랩 함수
트랙백 0개, 댓글 0개가 달렸습니다

댓글을 달아 주세요

Matlab을 이용한 영상처리 / 영상처리를 위한 Matlab Function

Programming/Matlab 2014. 1. 8. 19:16




Matlab을 영상처리에 이용하려고 시작했는데 영상처리에 쓸수 있는 Function이 뭐가 있는지조차 잘 모르겠다.


하나씩 찾아가면서 여기에 추가 해놔야지..


OpenCV 같은경우는 정보가 많은데 내가 못찾는건지 영상처리를 위한 Matlab 함수는 정리된걸 못찾겠다.


알고리즘 검증용으로 배우려는 Matlab인데 이걸 다 구현하고 있을순 없고 


찾는대로 추가하면서 나중에 찾아 써야겠다.


==========================================================================================================


영상 읽기 쓰기


imread( '파일명' )                            // 이미지 파일을 읽는다.

imwrite( image변수, '저장명' )           // 이미지 파일을 저장한다.



영상 보기 


imshow( image변수 )                        // image변수에 저장된 영상을 보여준다.



픽셀 접근하기


image변수( j,i )                                // j 번째행 i 번째열 원소에 접근한다. 이값을 받을수도 여기에 써넣을수도 있다.



영상 전체 변환


image변수 + constant                        // 전체 픽셀을 constant 만킄 더하여 변화시킨다.

image변수 * constant                        // 전체 픽셀을 constant 만큼 곱하여 변화시킨다.


double ( image변수 )                        // 자료형을 double 로 변환한다. 이는 다른 함수들이 파라미터로 double 을 

         쓰는경우가 많기 때문에 변환..

uint8( image변수 )                            // 자료형을 8비트 정수형으로 변환 C에서의 unsigned char 라고 생각하면 됨


rgb2gray( image변수 )                       // rgb 영상을 gray 영상으로 변환

rgb2hsv( image변수 )                        // rgb 영상을 hsv 영상으로 변환 - 역변환 가능

rgb2ntsc( image변수 )                       // rgb 영상을 yiq 영상으로 변환 - 역변환 가능

rgb2ycbcr( image변수 )                     // rgb 영상을 ycbcr 영상으로 변환 - 역변환 가능


mat2gray( matrix )                             // matrix 를 gray 영상으로 변환한다. 정확한 값을 얻기위해 사용



히스토그램 관련


imhist( image변수 )                            // histogram 을 생성

histeq( image변수 )                            // histogram equalization 연산을 수행한다.



이진화 관련


graythresh( image변수 )                    // Otsu's Binarization 연산을 수행한다.



Edge Detection 관련


edge( image변수, option )                 // Edge를 검출한다. 

Option 에 사용 가능한 것들은 아래와 같다.

'sobel' / 'prewitt' / 'roberts' / 'log' / 'zerocross' / 'canny'



선형공간 필터링 관련


fspecial( 'type', [parameters] )           // convolution 연산을 수행하기 위한 마스크를 생성한다. 

     type 의 종류는 아래와  같다

'average'   : 평균값 마스크 생성

'disk'        : 원형 평균 필터 마스크 생성

'gaussian' : 가우시안 저주파필터 마스크 생성

'laplacian' : 라플라시안 마스크 생성

'log'         : LoG를 위한 마스크 생성

'motion'    : 카메라가 선형으로 흔들린효과를 주는 마스크 생성

'prewitt'    : 프리윗 엣지 마스크 생성

'sobel'     : 소벨 엣지 마스크 생성

'unsharp' : 언샤프닝 마스크 생성


imfilter( image변수, mask, option )     // 마스크를 이용하여 영상에 convolution 연산을 수행한다.



비선형공간 필터링 관련


ordfilt2( image변수, index, size )        // size ( ex- 3x3 ) 안 값중 index 번째 번 값으로 채움

ex) ordfilt2( img, 5, ones(3,3) )  ==> median filtering

근데 얘는 아직 잘 이해가 안된다..


잡음 생성 관련


imnoise( image변수, 'type' )              // 영상에 잡음을 생성한다 사용되는 타입은 아래와 같다

   'gaussian' / 'localvar' / 'poisson' / 'salt & pepper' / 'speckle'


모폴로지 관련


imerode( image변수, size )               // 침식 연산을 수행한다. size 대신 strel 함수로 생성된 값이 들어가기도 한다.

imdilate( image변수, size )               // 팽창 연산을 수행한다.

imopen( image변수, size )               // 열림 연산을 수행한다.

imclose( image변수, size )              // 닫힘 연산을 수행한다.



기하학 변환 관련


imresize( image변수, scale, 'interp' )            // 영상 크기를 변환한다. interpolation option은 다음과 같다

 'nearest' / 'bilinear' / 'bicubic'

imrotate( image변수, angle, 'interp', box )      // 영상을 회전 시킨다. box는 회전후 영상 전체를 표시할지 원영상 

  사이즈에 맞춰서 자를지를 결정하는 옵션이다.



==================================================================================================


이거 말고도 함수들은 무진장 많은데 아직 모르는것들은 안썼다.


help help 를 입력해보면 맨밑에  Reference page in Help browser 가 보인다

아래에 Doc Help 를 누르면 브라우저가 뜨는데 여기서 왠만큼 찾아 볼 수 있다.





영상 처리 관련된 함수들은 Image Processing Toolbox - Function 에서 찾아 볼 수 있으니 필요한건 여기서 찾아보는걸로... 


저작자표시비영리

'Programming > Matlab' 카테고리의 다른 글

plot 관련 명령어 모음.  (0) 2014.04.13
[matlab] mfile을 이용하여 function을 만들어보자.  (0) 2014.01.16
Matlab을 이용한 영상처리 / 영상처리를 위한 Matlab Function  (2) 2014.01.08
Matlab 에서 사용되는 주요 함수 모음.  (0) 2013.12.31
블로그 이미지

매직블럭

작은 지식들 그리고 기억 한조각

Tag matlab, matlab function, matlab image, 매트랩, 매트랩 영상처리, 매트랩 함수
트랙백 0개, 댓글 2개가 달렸습니다

댓글을 달아 주세요

  • js 2014.09.15 17:12  댓글주소  수정/삭제  댓글쓰기

    모폴로지 함수에서
    size 값에 범위가 어느정도되나요?ㅠㅠ 도저히 감을 못잡겠어요..

    • 매직블럭 2014.09.16 10:55 신고  댓글주소  수정/삭제

      size 보다는 strel 함수로 생성된 값을 많이 쓰는거 같은데요

      http://www.mathworks.co.kr/kr/help/images/ref/strel.html

      여기 참고하시면 strel 에 대한 설명 잘 나와있으니 보시면 이해하시는데 도움이 될 것 같습니다.

  • «
  • 1
  • »

카테고리

  • 살다보니.. (414)
    • 주절거림 (3)
    • 취미생활 (36)
      • 지식과 지혜 (3)
      • 풍경이 되어 (4)
      • Memories (17)
      • 엥겔지수를 높여라 (2)
    • mathematics (6)
      • Matrix Computation (2)
      • RandomProcesses (3)
    • English.. (8)
    • Programming (134)
      • C, C++, MFC (51)
      • C# (1)
      • OpenCV (17)
      • Python (47)
      • Git, Docker (3)
      • Matlab (4)
      • Windows (3)
      • Kinect V2 (2)
      • 기타 etc. (6)
    • 전공관련 (73)
      • Algorithm (6)
      • Deep Learning (49)
      • 실습 프로그램 (4)
      • 주워들은 용어정리 (8)
      • 기타 etc. (6)
    • Computer (104)
      • Utility (21)
      • Windows (24)
      • Ubuntu, Linux (55)
      • NAS (2)
      • Embedded, Mobile (2)
    • IT, Device (41)
      • 제품 사용기, 개봉기 (14)
      • 스마트 체험단 신청 (27)
    • Wish List (3)
    • TISTORY TIP (5)
    • 미분류. 수정중 (1)

태그목록

  • 스마트체험단
  • 칼로리 대폭발
  • random variable
  • Computer Tip
  • ReadString
  • matlab
  • ColorMeRad
  • 후쿠오카
  • CStdioFile
  • Deep Learning
  • 크롬
  • 오봉자싸롱
  • 갤럭시노트3
  • DSLR
  • 매트랩 함수
  • matlab function
  • 포르투갈
  • 딥러닝
  • Convolutional Neural Networks
  • 매트랩
  • function
  • portugal
  • 일본
  • 에누리닷컴
  • LIBSVM
  • 큐슈
  • DeepLearning
  • utility
  • SVM
  • review

달력

«   2022/06   »
일 월 화 수 목 금 토
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
06-25 10:02

LATEST FROM OUR BLOG

  • 골뱅이 연산자의 의미 (행렬곱)..
  • 프린터 용지 부족 문제를 해⋯.
  • [MXNet] 데이터 리스트를 만⋯.
  • 예쁘게 출력하자 pprint - pr⋯.
  • 작업표시줄 미리보기를 리스⋯.
  • 이미지 실제 파일 포맷 확인하기.
  • 알리 등 해외배송 배송상태를⋯.
  • 티스토리 코드블럭 내용을 복⋯.
  • warning 을 on/off 하자.
  • windows 10 파일 선택, 파일⋯.
RSS 구독하기

BLOG VISITORS

  • Total : 1,130,073
  • Today : 34
  • Yesterday : 378

Copyright © 2015 Socialdev. All Rights Reserved.

티스토리툴바