본문 바로가기

Matlab

[MATLAB 기초] MATLAB이란? MATLAB의 특징

matlab은 신호처리, 영상처리하는데 유용하게 쓰이는 프로그램이다.

대학교를 마저 졸업하면, 의료기기 회사에 R&B 개발자로 들어가려고 준비하고 있다. 의료기기에서 대체로 software 개발자, hardware 개발자, mechanical 기기개발자, signal / imaging 개발자 등 여러 개발자들을 연구실로 채용한다. 그 중에서, signal / imaging (신호 영상처리) 개발자가 되어 의공학 분야를 공부하고 박사학위를 따는 것이 나의 꿈이다.

 

사실, 전자공학과를 전공하고 있어서, 의료기기 분야가 적격이라고 할 수는 없다. 재활의료기기를 전공하신 나의 지도 교수님께서 상담때, 이 얘기를 하시기도 했었다. 의공학 분야의 친구들이 많이 그 쪽으로 가지만, 전자공학과는 전공분야가 아니라 회사에서도 그닥 반겨하지 않는다는 것이다. 그래서 몇 일 동안, 심각하게 나의 장래에 대해 고민하기도 했었다. 그래도 지금은, 향후에 개발자로 들어가 실질 개발능력을 배워 박사과정을 밟는 것을 생각해두고, 필요한 능력을 키우는데 매진하고 있다.

 

오늘 포스팅은, MATLAB이 영상 신호처리를 마스터하기 위해 필요한 주요 과목 중에 하나로, C언어와 비교하여 어떤 특성을 가지고 있는지 차이점은 무엇인지 간략하게 설명하기 위해 쓰려고 한다.

 

 

 

 

> MATLAB의 특징

 

- C, C++ 프로그래밍 언어보다 빠르게 공학적 수학적 계산문제를 해결 할 수 있다.

(C언어 보다는 공학적 수치 분석과 통계 데이터 테스트 부분에서 빠른 성능을 자랑한다.)

- 수학적 연산, 방정식 풀이, 통계적 테스트, 알고리즘 개발, 데이터 분석 등 공학적 프로그래밍이 수월하다.

- C언어에서 좀 어려울 수 있는 행렬, 배열 연산이 보다 쉽다.

(고유 함수와 명령들이 잘 갖추어져 있다.)

- 위와 같은 장점들 때문에, 제 4세대 언어라고 불리기도 한다.

(C언어는 제 3세대 언어라고 불린다.)

- 단점은, 보다 쉽게 하기 위해 만든 많은 함수들과 명령어, 항목 등에서 유용한 것을 살펴보기 위해, 어느정도 공부를 해야할 필요가 있다. (하지만, 이것은 C언어도 마찬가지다.)

 

 

MATLAB은 C언어 보다, 공학적 연산 문제를 해결하는데 있어서 더 빠르다. MATLAB이 알고리듬 개발, 데이터 제시, 데이터 분석, 수치계산을 위한 대화 형식으로 만들어졌기 때문에 이것을 수행하기 훨씬 수월한 것이다. 이러한 점에서 MATLAB은 공학적 계산 문제해결이 가능하고 어려운 행렬, 배열 연산 등과 같은 수학적 연산도 접근이 쉬워진다. 하지만, 이것들을 만족하기 위해 그리고 MATLAB을 유용하게 이용하기 위해서, 기초적인 지식과 함수검색 방법, 코드 작성 방법 등에 대해서 알아두어야 한다.

 

tip. MATLAB 입문과 활용이라는 책이 있다. 이 책은 MATLAB이 어디에 쓰이고, 무엇을 위한 프로그램인지 매우 잘 설명하고 있다. 또한, 기초적인 문법과 적용 방법, 제어공학까지 전부 꼼꼼히 다루고 있다. 이것을 봐도 MATLAB이 어디에 쓰이는지 모르겠고 프로그래밍하는데 어려움을 느낀다면, MATLAB 기초 도서를 찾아 공부하는 것도 나쁘지 않다.