* 오늘은 출장에서 돌아오는 길이라 여유가 있어 휴게소에 들를 때마다 글 하나씩 올리네요.

장비 중에서도 검사 장비는 다른 일반 생산 및 제조 장비보다도 보다 더 높은 정밀도와 신뢰성을 요구합니다. 출시할 제품의 품질과 평판에 미치는 영향이 결정적이다시피 하죠.
불량의 징후를 찾지 못하고 그대로 출시한 제품이 그 기업에 얼마나 큰 타격을 입히는지 잘 아실겁니다.

검사 장비를 얕잡아 쉽게 생각하고 덤빈 장비 개발업체들이 큰 어려움을 겪는 경우를 많이 봐왔고, 심지어 도산하는 경우도 가끔 봅니다. "가끔"이라고 언급했지만, 다른 업종에 비하면 좀 자주 일어나는 것 같습니다.

장비 개발을 발주하는 업체의 담당자들이 경험과 실력있는 조금 비싼 업체와 패기와 열정 있는 싼 신생 업체 사이에서 판단의 착오를 일으키면 나중에 큰 어려움을 겪느라 다 늙어버리는 건 물론이고, 윗사람들, 상무이사는 물론이고 심지어 대표이사의 목까지 날아가는 경우도 들어봤습니다.
그것도 바로 어제 말이죠.

메카트로닉스가 응용된 산업현장을 자주 접하다보니, 기계 설계 기술이 근본적으로 참 중요하고, (기계,전기,전자) 부속품을 잘 선정하여 하드웨어를 잘 구성하는 것, 그리고 그것을 효율적이고 신뢰성 있으며 안정적인 통합을 이루는 소프트웨어 기술이 참 중요함을 느낍니다. 제가 몸담고 있는 분야가 소프트웨어라서 좀 주관적일지도 모르겠지만 대체로 그렇게 인정하실 겁니다.
기계적, 전기 전자적인 오차도 소프트웨어가 어느 정도는 보완해주기도 합니다.

우리 모두는 각자 자기가 속한 분야에서 최고의 기술을 갖추게 되어 열심히 성실하게 큰 희망을 갖고 일한다면, 결국은 국가와 민족, 더 나아가 인류를 위해서도 좋은 역할을 하게 되는 것이라고 믿습니다.

그 믿음대로 될 것입니다.

2014-11-07(금)
허창원
Posted by 허창원
,
요즘 고속도로를 많이 이용하는 중에 든 생각을 적어봅니다.

음향학적인 클락숀이 일반화되어 있지만, 요즘 자동차의 바깥 소음을 차단하는 기술로 인해 실제 도로에서는 큰 효과를 볼 수 없는 상황이 생기는데,
이럴 때 전파를 이용한 전자적인 클락숀이 좋은 보조수단이 될 수 있을 겁니다.
근거리 전파의 전파세기를 이용하여 음량이 자동 조절되면 좋을 것입니다.

도로 주위에서 클락숀 소리를 들어야만하는 곳에는 기존 방식에 부가하여 선택적으로 채택하여 적절한 크기로 재생하면 되겠습니다.

바깥 소음을 완전 차단하더라도 중요 클락숀 소리를 꼭 들어야만 하는 상황에 이용할 수 있겠습니다.

전자적인 클락숀은 방향에 따라 차별적으로 재생되도록 할 수도 있겠습니다.

2014-11-07(금)
허창원
http://허창원.한국
Posted by 허창원
,
* 출장 다니면서 잠깐 휴식을 취할 때 메모하다가 스마트폰으로 블로그에 바로 올릴 수 있지 않을까 생각이 들어 처음으로 스마트폰으로 작성해 봅니다.

기계, 기구 부분,
전기, 전자 소자 및 회로 부분,
그리고 컨트롤러나 데이터 수집 프로세서의 소프트웨어 부분
이런 것들이 모두 제각각 최고의 기술로 구성되고 통합되어야 제대로된 검사, 시험 시스템이 갖추어집니다.
사용자가 최종적으로 접하는 부분은 주로 소프트웨어가 담당하게 되는데, 논리적으로도 치밀하게 구성되고 안정적으로 운영되도록 해야합니다. 시각적인 아름다움이 더해진다면 금상점화겠지요.

멋있는 디자인의 프로그램이라도 버그가 많다면 쓰레기로 취급될 수밖에 없습니다.

하지만 디자인이 투박해도 기능이 안정적이고 대체할 제품이 없다면, 산업현장에서 유용하게 이용됩니다.
쓰도 되고 안쓰도 되는 곳에서는 디자인이 사용여부를 좀더 좌우하게 되겠지요.

2014-11-07(금)
허창원
http://허창원.한국
Posted by 허창원
,

저는 일자리 창출에 관심이 많은 프로그램 개발자입니다.

포털 사이트의 뉴스 제목에 "제대로 된 직장없다"는 기사를 보면서 오늘은 제 의견을 블로그에 올려봅니다.

 

아래는 제가 본 뉴스 원본 링크입니다.

 

http://media.daum.net/economic/newsview?newsid=20140924103914115 

 

이런 뉴스를 볼 때마다 안타까운 심정을 늘 갖고 있습니다. 비정규직이 느끼는 고용불안과 열악한 처우(보수 포함)는 누구나 개선되어야할 필요가 있다고 느끼지만, 막상 그 방법은 막막합니다.

비정규직을 정규직으로 전환하는 방법이 있지만, 이것은 기업에 큰 부담을 주게 됩니다.

고용인 입장이던 사람이 창업을 하여 고용주가 되면, 그 새 고용주도 역시 계약직 직원을 선호할 수밖에 없습니다.

 

1차 산업의 비중이 많았던 시대를 지나, 산업혁명 이후에는 2차 산업(제조업 등)이 발달하게 되었고, 오늘날에는 서비스업과 같은 3차 산업의 비중이 훨씬 많아지게 되었습니다.

시대는 이렇게 다양화되고, 세분화되고, 전문화되어 가고 있습니다.

우리는 이렇게 변화가 많은 시대에 살고 있는데, 평생 직장을 갖는다는 것은 무척 어려워지고 있다고 봅니다.

평생 직장이라면 대체로 정규직을 의미하고, 늘 해오던 일들을 앞으로도 계속 하면 좋겠다는 희망도 배경으로 깔고 있다고 보여집니다.

 

평생 직장으로 삼을 만한 기업이나 단체가 얼마나 있을까요? 관공서, 은행, 학교, 병원 같은 데는 사회의 변화에 그렇게 민감하게 변하지는 않을 것 같습니다.

사회가 변하지만 그래도 잘 변하지 않는 분야... 그런 조직이나 단체는 찾아보면 더 많이 있을 수도 있을 것입니다.

자신의 꿈보다는 안정된 직장을 더 바라는 사람들은 그런 관점에서 직장을 찾아봐야겠지요.

 

우리 사회의 대부분의 많은 일자리들은 사회나 문화, 기술의 변화에 따라 일자리 수나 수입면에서 많은 영향을 받게 되는 것 같습니다. 없던 업종이 생기기도 하고, 잘 해오던 회사가 쓰러지기도 하는 등 변화가 무쌍합니다.

 

이렇게 변화 많은 세상이라면 임시직, 계약직과 같은 비정규 일자리를 나쁘게만은 볼 수 없겠습니다.

관건은 저임금!

임시직이나 계약직이라도 임금이 높다면 무슨 문제가 되겠습니까?

 

"에이~ 임시직, 계약직이 더 높은 임금을 받는 그런 데가 어디있습니까?"라고 얘기하시는 분들은 자신이 규정한 그런 세계에서 계속 살아가는 것입니다.

하지만, "임시직, 계약직이라도 정규직원보다 더 높은 수입을 올릴 수가 있다"라고 믿고, 그 방법을 찾는 분들은 결국 찾게 됩니다.

기적은 그것을 믿는 사람에게 이루어지는 것 같습니다.

 

변화가 많은 세상이라면, 기회도 많은 법입니다. 기존에 늘 해오던 방식에서 탈피하여 새로운 각도에서 문제를 보게되면 새로운 기회를 볼 수 있을 것입니다.

 

직장을 구하는 분들, 창업을 생각하시는 분들이라면

자신이 이 사회를 위해 무엇을 할 수 있을까를 깊이 생각해 본다면,

사회에 큰 도움이 되는 길을 발견하게 될 것이고,

모두에게 유익한 일을 해나가면서 자신도 그 덕을 보게 될 것이라는 믿음을 가진다면,

더 좋은 일도 많이 만날 것이라고 생각됩니다.

 

 

... 무슨 얘기하려다가 이렇게 횡설수설했는지 모르겠습니다.

같은 시대를 살아가는 한 사람으로서 사회의 다른 구성원들을 향해 제 생각을 나타내고 싶은데,

아직은 제가 느껴온 사회 현상에 대해 생각이 잘 정리되지도 못했고,

글로써 표현하는 것도 서툴러서 글의 구성이 깔끔하지 못한 것 같습니다.

계속하다보면 나아질 겁니다.

어쨌거나 힘든 상황에 계신 분들에게 용기를 드리고 싶은 마음만은 이해해 주십시오.

 

2014-09-24(수)

허창원

 

 

Posted by 허창원
,

교회 방송실에서 봉사하시는 분들을 위해 올립니다.


지금까지 저희 교회 홈페이지에 올리는 예배동영상을 wmv 파일로 만들어왔습니다.

인터넷 익스플로러에 종속된 방식이라고 볼 수 있습니다.


이제는 인터넷과 모바일 환경이 많이 변화되어

다양한 웹브라우저(인터넷 익스플로러, 크롬, 파이어폭스 등)에서 재생가능한 동영상 코덱이 무엇인지를 알아보아야할 상황에 이르렀습니다.

그래서 PC와 스마트폰(안드로이드)에서 심도있게 테스트를 해보았습니다.


결국 결론은 MPEG-4 AVC/H.265 동영상 코덱을 이용하는 것이 무난하다는 결론에 이르렀습니다.


PC에서는 MS 인터넷 익스플로러 11, 구글 크롬, 모질라 파이어폭스, 줌인터넷 스윙에서 테스트해보았고,

스마트폰에서는 안드로이드 웹브라우저와 크롬에서 테스트해보았습니다.


스윙을 제외하고 모두다 정상적으로 재생되었습니다. 스윙은 HTML5 분야에 좀더 분발해야겠습니다.

(이후에 스윙 1.1.2.0 버전에서 테스트했더니 잘 되네요. 2014-05-19)


다음팟인코더에서 아래와 같이 설정하여 동영상을 변환하였고,


20140506_003005_MP4_encoding.png



HTML5 태그를 이용하여 아래의 내용을 video_test_mp4_3.html 로 만들었습니다.

20140506_012042_.png



이 html 파일과 mp4 비디오 파일을 제 홈페이지 테스트 디렉토리에 올려서

인터넷 익스플로러 11에서 재생해보았고,

20140506_005506_.png 



구글 크롬(버전 27.0.1453.116m)에서 테스트해보았으며,

20140506_005542_.png


파이어폭스 28.0에서도 문제없이 재생되었습니다.

20140506_005524_.png 



안드로이드 스마트폰에서도 문제없이 재생되었습니다.

 Screenshot_2014-05-06-00-56-46_s2.png


Screenshot_2014-05-06-01-12-22_s.png
 

아이폰에서는 안해봤지만 당연히 될 것입니다. 애플과 MS가 H.264에 대한 저작권과 연관이 있기 때문입니다.

구글에서 WebM을 오픈소스화하여 공개하는 바람에 H.264도 저작권은 있지만 일반 사용자에게는 저작권료를 받지 않게 되었습니다.


WebM은 좀더 지켜보면서,

현실적으로 MPEG-4 AVC/H.264 를 선택하는 것이 무난하겠습니다.


2014-05-06

마산삼일교회 허창원

Posted by 허창원
,

한두달 전에 구입한 노트북을 이용하는 중에 트리플 모니터를 구성하여 작업을 해보았습니다.

참고로 제 노트북은 삼성 아티브북 8, 모델명은 NT870Z5G-X78S 입니다.

이 노트북에 모니터 연결단자가 아래 사진과 같이 HDMI, RGB 두개가 나와 있습니다.

 

 

노트북과 다른 두 LCD 모니터 모두 1920x1080 Full HD 해상도입니다. 이렇게 똑같은 해상도를 가져야 원격 데스크톱 화면이 자연스럽게 확장되거든요.

 

먼저는 아래 사진과 같이 배치를 해보았습니다.

 

 

해상도는 같아도 크기가 작은 노트북 모니터를 가운데 두니 실제 사용하기에는 좀 불편하게 느껴졌습니다.

 

그래서 노트북을 가장 왼쪽에 두고 일반 LCD 모니터를 오른쪽에 배치해보았습니다. 이랬더니 아까보다 편리하네요.

 

 

 

듀얼 모니터는 늘 이용해오고 있지만, 이렇게 트리플 모니터를 구성하여 사용해본 것이 처음이라 컴퓨터 작업에 신이 나네요.

 

이 글을 작성하고 있는 이곳은 제가 자주 나와있는 협력업체 사무실인데요, 이렇게 밖에 나와있을 때 원격지의 제 사무실 메인 PC에 원격 데스크톱으로 접속하여 작업할 때가 많습니다. 같은 해상도로 구성된 3개의 모니터가 있으므로, 원격 데스크톱 화면에서도 트리플 모니터로 사용할 수 있는지 시도해 봤는데, 성공입니다. 잘되고 아주 좋습니다.

 

원격 데스크톱 명령어를 입력하기 위해 윈도키+R 키를 눌러 /span 이라는 옵션을 함께 넣어줍니다.

아래와 같이 말입니다.

 

mstsc /span

 

 



(2014-05-21에 추가: 아래에 설명하는 디스플레이 탭의 "모든 모니터를 원격 세션에 사용"을 체크하면 /span 이라는 옵션을 넣지 않아도 되네요. 그냥 mstsc 라고 입력해도 되겠습니다. 원격 데스크톱 연결 버전 6.3.9600에서 확인함)

 

 

그리고 아래 그림처럼 옵션을 표시합니다. 

 

 

 

그리고, 디스플레이 구성 옵션에서 "모든 모니터를 원격 세션에 사용"을 체크한 다음, 연결 버튼을 누릅니다.

 

 

 

이렇게 원격 데스크톱 연결을 했더니, Windows 7을 사용하는 원격지의 제 데스크탑 PC 화면이 나타났고, 3개의 모니터로 작업할 수 있게 되었습니다.

 

 

 

 

 

 

2개의 모니터 포트를 제공하는 삼성 노트북의 하드웨어와

노트북의 Windows 8.1 운용체계 소프트웨어와

마이크로소프트의 원격 데스크톱이라는 매우 편리한 유틸리티 소프트웨어 덕분에

작업공간이 자주 바뀌는 저의 이동 작업이 재미있습니다.

 

2014-04-17

허창원

Posted by 허창원
,

마이크로소프트(MS) 윈도XP 운영체제 지원서비스의 종료가 다가옴으로 인해 정보보안 대책 비상이라는 기사들이 자주 나오고 있습니다.

 

저는 PC OS가 마이크로소프트에 너무 종속되어 있는 것이 문제이고, 이러한 이슈는 다음에도 계속해서 일어날 수 밖에 없습니다. 이 기회에 국가적으로도 리눅스를 병행 사용해 나가도록 하는 노력이 필요하다고 봅니다.

 

리눅스 배포판 중에 우분투가 데스크탑용으로 유명한데, 꼭 이런 배포판이 아니라도 우분투를 기반으로한 정부기관용 배포판, 교육기관용 배포판 등을 만들어서 리눅스를 보편화시키면서 새로운 일자리를 창출하면 좋겠습니다.

 

리눅스를 사용하는 데에 있어서 생기는 문제점에 대한 해결방법 등을 DB화하여 축적하고, 검색가능한 형태로 일반에게 공개하는 것입니다.

그리고, 각 기관마다 적용해 나가는 과정에서 생기는 기술지원요청에 대응하기 위해 각 배포판 리눅스에 대한 운용자 교육을 시행하고, 이 과정을 이수한 엔지니어들을 각 기관별로 파견 혹은 채용하는 것입니다.

 

기관에서 윈도 7이나 윈도 8.1 운영체제도 수용하되 리눅스도 함께 수용하여 플랫폼에 독립적인 업무체제를 갖추어나가는 것이 앞으로의 보안문제에도 긍정적인 효과를 볼 수 있을 것입니다.

나아가 또 다른 OS도 업무지원에 문제가 없다면 수용해나가면 OS에 종속되는 폐해를 막을 수 있을 것이고, 이렇게 되면 보다 다양해진 일자리의 창출이 가능하다고 봅니다.

 

제가 종사하고 있는 장비 프로그램 분야에서는 리눅스를 바로 적용하기 어려운 여건이지만, 일반 사무 분야에서는 충분히 가능하다고 보여집니다.

저도 구형 노트북에 우분투를 설치하려고 준비해놓고 있으며, 시간이 나면 설치해보고 사용해볼 작정입니다.

 

2014-03-17(월)

허창원

Posted by 허창원
,

* 예수님의 사랑으로 축복합니다.


LabWindows/CVI에서 OpenCV 사용하기


허창원()


차례

개요

1. LabWindows/CVI 버전

2. OpenCV 버전

3. LabWindows/CVI의 include 경로 옵션

4. 테스트 프로그램 작성 및 테스트



개요

인텔(Intel)사에서 후원하는 오픈소스 컴퓨터 비전 라이브러리인 OpenCV를 LabWindows/CVI에서 사용하기 위해 테스트하던 중 몇가지 미리 알아두면 편리한 사항이 있어서 이렇게 글을 쓰게 되었습니다. LabWindows/CVI로 OpenCV를 이용하기 위한 분들을 위한 것일뿐 아니라 사실 저 자신을 위한 것이기도 합니다. 시간이 오래 지나고 나면, 저도 기억이 가물가물해져서 누군가에서 설명을 하려고 하면 뭔가를 빠트리곤 하기 때문입니다. 어쨌거나 제 글이 도움이 되실 분들이 있을 것이라고 믿고 시작합니다.


1. LabWindows/CVI 버전

이 글을 작성하는 날짜는 2014년 1월 2일입니다. 현재를 기준으로 NI LabWindows/CVI는 2013 버전이 나와 있습니다. 정확히 말해 LabWindows/CVI 2013 f1 Patch 버전입니다.



그림 1.1 LabWindows/CVI 2013 로고


그리고, 저는 예전에 수행한 프로젝트도 지원해야할 필요도 있어서 그림 1.2와 같이 여러 버전의 LabWindows/CVI를 설치해두고 적절한 버전을 선택하여 사용하고 있습니다.



그림 1.2 여러버전의 LabWindows/CVI가 설치되어 있는 환경


이번 테스트에서는 LabWindows/CVI 2010 sp1 버전부터 2013 버전까지 이용해보았습니다.


2. OpenCV 버전

이 글을 사용하기 전에 OpenCV Version 2.4.7.2 로 테스트하였는데, OpenCV 사이트에 방금 접속해보니 그저께 새로운 버전, Version 2.4.8 이 올라와있네요. 새로 다운로드 받아 글을 써 나가겠습니다.



그림 2.1 OpenCV 버전(2014-01-02 현재)


OpenCV v2.4.8 버전을 다운로드 받아서 임의의 폴더에 압축을 해제한 후에, 전체 파일들을 아래의 경로에 이동시켰습니다. 그림 2.2에서는 include 시킬 폴더를 열어둔 화면입니다.


D:\OpenCV\OpenCV_v2.4.8


그림 2.2 OpenCV 설치된 경로



3. LabWindows/CVI의 include 경로 옵션

LabWindows/CVI 2013 버전을 실행한 다음, 테스트를 위해 새 프로젝트 파일을 열어 저장합니다. 파일명은 LOCV_p042.prj 로 지정하였습니다. (참고한 책이름 약어와 페이지를 적절히 조합한 이름입니다)


그림 3.1에 보인 대로, CVI 프로젝트 창의 메뉴에서 Options - Environment 를 선택합니다. (저는 CVI 작업환경을 아래와 같이 사용합니다. 저처럼 사용하시려면, View - Workspace View Selection... 메뉴에서 Classic View를 선택하시면 됩니다.)


그림 3.1 LabWindows/CVI Environment 옵션 선택



그림 3.2 LabWindows/CVI의 Include Paths... 설정


그림 3.3에 보인대로 OpenCV의 include 폴더를 지정합니다. Browse 버튼을 눌러 해당 경로를 찾아가 선택하면 되겠습니다. 저는 "Switch Lists (F6)" 버튼을 눌러 현재 프로젝트에서만 이 include 환경이 적용되도록 하였습니다. (저처럼 이렇게 하면, 매번 새로운 OpenCV 프로젝트를 시작할 때마다 해주어야하는 번거로움이 있겠지만, 매번 기억을 새롭게 하는 데에 도움이 될 것같고, OpenCV 버전이 바뀌더라도 한번 더 챙겨볼 수 있을 것같아 저는 이렇게 하였습니다)


그림 3.3 OpenCV Include 폴더 경로 지정


4. 테스트 프로그램 작성 및 테스트

그림 4.1에는 테스트를 위한 소스 프로그램을 편집하여 보았습니다. 일반적으로 많이 소개되는 Visual C++의 예제와 달리 간단하게 하나의 파일로 테스트 예제를 구성할 수 있습니다. ANSI C 규칙에 충실한 LabWindows/CVI의 단순하고 간결한 장점이라고 저는 봅니다.


그림 4.1 OpenCV 를 이용한 이미지 파일 불러와서 보이는 예제


이미지로 소스를 보이면 타이핑하기 불편하실까봐 소스도 아래에 넣었습니다.


// LOCV_p042.c
// 사용법: LOCV_p042.exe <imagefile>
//
#include <ansi_c.h>
#include "opencv/highgui.h"

int main (int argc, char *argv[])
{
    if(argc > 1)    // 명령행 인자로 파일명이 지정되어야 함
    {
        IplImage* img;
       
        // 파일을 불러오고,
        img = cvLoadImage( argv[1], -1);     
   
        // 이미지를 표시할 창의 이름을 정하고
        cvNamedWindow("Example", CV_WINDOW_AUTOSIZE);  
   
        // 이미지를 보여주고,
        cvShowImage("Example", img);                   
       
        // 키 입력을 기다리고,
        cvWaitKey(0);                                  
   
        // 이미지를 해제한후
        cvReleaseImage(&img);                          
   
        // 창을 닫습니다.
        cvDestroyWindow("Example");                    
    }
    else    // 파일명을 명령행 인자로 주지 않았을 때...
    {
        printf("Command Line Argument required!");
        getchar();
    }
   
    return 0;
}


위와 같이 제대로 타이핑되었다면, Build - Build(Ctrl + M) 메뉴를 선택하여 Build 합니다. 그러면, 그림 4.2와 같이 에러가 날 것입니다.



그림 4.2 Build 시의 컴파일 에러


마지막 줄의 types_c.h 에서 생긴 에러로 인해 앞의 warning도 생긴 것입니다. 이 마지막줄을 더블클릭하면 그림 4.3과 같이 문제가 된 해당 소스 파일이 열립니다.



그림 4.3 문제가 된 types_c.h 헤더파일의 해당 라인


lrint() 라는 함수의 프로토타입이 제대로 선언되어 있지 않다는 에러인데, 이 문제에 대해 CVI 표준 include 파일들과 Visual C++의 표준 헤더파일들을 비교해 보는 등 여러가지를 시도한 끝에 문제가 된 문장을 아래와 같이 바꾸어버렸습니다. 즉, OpenCV의 types_c.h 헤더파일을 수정하였습니다.


return (int)(value > 0 ? value+0.5 : value-0.5);


그리하여, types_c.h 헤더파일이 그림 4.4와 같이 수정되었습니다.


그림 4.4 수정된 types_c.h 헤더파일


다시 빌드해보면, 이제는 Link 에러가 그림 4.5와 같이 나타납니다. (Compile 단계에서는 warning 정도가 나오는데, 살펴본 결과 무시해도 되겠습니다.)


그림 4.5 Link 에러


이것은 Library가 없어서 그런 것인데, 저는 정적 library보다는 DLL을 주로 이용할 것이기 때문에, 아래의 경로에서 Import Library를 CVI 프로젝트에 포함시킵니다. (이번 테스트에서는 아래의 두 library만 있으면 되므로...)


D:\OpenCV\OpenCV_v2.4.8\build\x86\vc12\lib


그림 4.6 LOCV_p042 프로젝트에 포함시킬 Import Library


이제 Build 해보니, 정상적으로 Build 되었습니다. 이제 실행을 위해 아래의 경로에서 해당 DLL을 실행 폴더로 복사해와야겠습니다.


D:\OpenCV\OpenCV_v2.4.8\build\x86\vc12\bin


그림 4.7 LOCV_p042.exe 실행을 위한 DLL


그리고, 불러올 이미지 샘플을 아래의 경로에서 실행 폴더로 복사해 옵니다.


D:\OpenCV\OpenCV_v2.4.8\sources\samples\c


그림 4.8 LOCV_p042.exe 실해시에 이용할 샘플 이미지 파일


이제 그림 4.9와 같이 실행에 필요한 파일들이 다 모인 것 같습니다.


그림 4.9 LOCV_p042.exe 실행 폴더


실행할 때 주의할 점은, 불러올 이미지 파일명을 명령행 인자로 주어야한다는 것입니다. LabWindows/CVI의 Run - Specify Executable and Command Line.... 메뉴에서 지정해도 되겠지만, 그냥 명령 프롬프트(cmd) 창을 열어서 그림 4.10과 같이 실행을 하였습니다.



그림 4.10 명령 프롬프트(cmd)에서 LOCV_p042.exe 실행하기


실행을 했더니, 그림 4.11과 같은 에러가 나타납니다. 헉.... MSCVP120.dll 이 무슨 파일인지 인터넷 검색을 해보니, Microsoft Visual Studio 2013 관련 DLL인 것 같습니다. Visual C++ 2013 Run-Time Engine이라고 보면 되겠습니다. (OpenCV v2.4.7.2와는 달리 v2.4.8은 VC++ 2013 버전으로 개발한 모양입니다.)



그림 4.11 Visual C++ Runtime 에러



Microsoft Download Center로 가서 "Visual Studio 2013용 Visual C++ 재배포 가능 패키지"를 다운로드 받아서 설치합니다. (저는 Windows 7 x64 버전을 사용하지만, Visual C++ 재배포 가능 패키지는 x86 버전을 설치하였습니다. OpenCV도 x86 버전을 이용하였습니다.)


그림 4.12에 다운로드 및 설치과정을 보였습니다.


http://www.microsoft.com/ko-kr/download/details.aspx?id=40784




그림 4.12 Microsoft Visual C++ 2013 재배포 가능 패키지 설치


이제 다시, 그림 4.10과 같이 실행했더니, 그림 4.13과 같이 cat.jpg 이미지 파일을 불러와서 창을 띄워 보여줍니다.



그림 4.13 LOCV_p042.exe 실행화면



이렇게 하여, LabWindows/CVI에서 OpenCV를 사용하는 첫과정을 살펴보았습니다. LabWindows/CVI 2010 sp1, 2012 sp1 버전에서도 문제없이 빌드되었고, 실행되었습니다.

단, LabWindows/CVI 9.0.1 버전에서는 문제가 발생하던데, 오래된 버전이라 문제를 해결하기 위해 더 이상 시도하지는 않았습니다.


본 글은 CVI정보나눔(www.cvi.kr)에도 좀더 다듬어서 올릴 예정입니다.

LabWindows/CVI로 OpenCV를 이용하는 모든 분들에게 좋은 일이 많이 있기를 바랍니다.


2014-01-02

허창원


Posted by 허창원
,

저는 사무실의 메인 데스크탑 PC를 외부에 나가서도 종종 접속하기 위해 윈도의 원격데스크톱 기능을 많이 이용합니다.

출장이나 외출 중일 때에도 직접 사무실의 데스크탑 PC에 접속하여야할 경우가 자주 있습니다.

 

노트북을 들고 다닐 때도 있지만, 어떨 때에는 PC방의 컴퓨터를 이용하기도 하고, 다른 업체의 PC를 이용하기도 합니다.

 

 

 

 

하지만, 사용한 뒤에는 접속 기록이 해당 PC에 남아있게 됩니다. 이것을 제거하기 위해 레지스트리를 편집하고, 내문서 폴더의 Default.rdp 파일을 삭제하여야하는데, 참 번거롭습니다.

 

이를 쉽게 해결하기 위해 실행 가능한 스크립트 파일을 만들어 올리신 분들도 많이 보게 됩니다.

인터넷 검색을 통해 찾아본 아래의 글도 도움이 되었습니다.

 

          원격 데스크톱의 접속 기록 지우는 방법 및 기록 초기화 프로그램

 

저는 한단계 더 나아가 보다 더 쉽게 하기 위해, 제 도메인에 바로 링크를 걸었습니다. 웹브라우저의 주소표시줄에 아래와 같이 입력해보십시오.

 

          kdtech.net/clearrdp.cmd

 

그러면, 아래 그림처럼 파일을 다운로드할 것인지 물어봅니다. 이럴 경우, 믿을 수 없는 파일이라면 섣불리 실행을 하지 않는 것이 좋습니다. 저는 제가 올린 파일이 확실하므로 바로 "실행" 버튼을 눌러 실행합니다.

 

 

 

그러면, 원격데스크톱 연결 기록이 깔끔하게 제거됩니다. 윈도 XP와 윈도 7에서 테스트해보았습니다.

파일이 의심스러우신 분들은 "저장" 버튼을 눌러 파일의 내용을 확인해보시고, 자신이 편리한 방법대로 활용하면 되겠습니다. (또, 앞으로 언제일지는 모르지만 크래커의 공격으로 파일이 잘못되어 있을 수도 있을 가능성이 있으므로  바로 실행하는 것은 주의하십시오.)

 

원격 데스크톱 연결 주소 기록을 쉽게 제거하는 방법을 제시해보았습니다.

 

2013-12-24

허창원

 

 

 

 

Posted by 허창원
,

대부분 많은 사람들은 데스크탑용 OS로 윈도 시리즈를 이용해오고 있습니다.

저 역시 윈도 기반에서 장비 프로그램을 개발하고 있죠!

 

근래에 윈도XP 지원 중단 기사가 나오면서 눈길을 끈 기사가 리눅스 '우분투'가 대안 OS로 떠오르고 있다는 거였습니다. 관심있게 읽어보고, 인터넷에 올라온 여러 글들을 읽어보았습니다.

 

레드헷, CentOS, 우분투(Ubuntu) 등의 리눅스 배포판 중에 우분투는 개인 사용자를 위한, 데스크탑용 OS로 손질을 잘 해나오고 있는 것 같더군요.

 

우분투 공식 사이트에 들어가보니, 데스크탑 뿐 아니라 다른 여러분야에서도 영향력을 넓혀 나가고 있는 것을 느낄 수 있었습니다.

 

 

 

그 중에서도 우선 데스크탑(Desktop) 버전에 관심이 많이 갑니다. 일반적인 웹서핑이나 웹기반 작업에는 별 무리 없이 사용할 수 있을 것 같더군요. 어서 우리나라의 인터넷 환경도 액티브X를 완전히 벗어나서 자유롭게 웹브라우저들을 이용하게 되기를 기대합니다. 그때에는 크롬북이나 우분투가 설치된 노트북들도 많이 이용될 수 있겠습니다.

 

 

 

한글화된 자료를 제공하는 곳이 있는지를 찾아보니, 우분투 한국 커뮤니티가 있네요. 현재(2013년 12월) libhwp 관련으로 갈등을 겪고 있는 것 같은데, 그것은 지엽적인 문제인 것 같고, 앞으로 우분투에 대한 좋은 정보를 주고 받는 커뮤니티로 새롭게 잘 도약할 수 있기를 기대합니다.

  

 

 

윈도 OS 기반에서 NI사의 LabWindows/CVI로 장비 관련 프로그램을 개발하는 저로서는 당분간은 업무에 적용하기는 어려울 것 같습니다. NI사에서 리눅스용 LabWindows/CVI도 제공하고 있는 것 같은데, 주로 레드헷에 포커스를 맞춘 것 같더군요. 크게 보면 같은 리눅스라서 우분투(Ubuntu)에서도 가능은 할 것 같은데, 시행착오를 좀 겪을 것 같네요.

 

우분투는 아주 최소사양에서도 돌릴수 있다고 하니, 3~4만원대 초소형 컴퓨터 라즈베리 파이(Raspberry Pi)에 설치하여 적절한 분야에 이용하는 것도 괜찮을 것 같습니다. 예를들면, 개별 장치를 제어하는 기능을 넣고, 거기다 웹서버를 설치하여 원격지의 서버와 통신하도록 시스템을 구성한다면 굳이 비싼 컴퓨터를 사용하지 않아도 될 것 같습니다.

 

라즈베리 파이 모델-B

 

우분투 관련 전망을 알아보다 보니 아래의 글들이 도움이 되네요.

 

[우분투 집중 점검](1) "우분투(Ubuntu) 넌 도대체 누구니?"
http://it.news.danawa.com/News_List_View.php?nModeC=1&nSiteC=1&sLikeKey=keyword&sLikeValue=%BF%EC%BA%D0%C5%F5&nSeq=2345558&nBoardSeq=


[우분투 집중 점검](2)]대안으로 떠오르는 우분투, 내 PC에 설치해보자
http://it.news.danawa.com/News_List_View.php?nModeC=1&nSiteC=1&sLikeKey=keyword&sLikeValue=%BF%EC%BA%D0%C5%F5&nSeq=2344913&nBoardSeq=


[우분투 집중 점검](3)우분투, 비용 '제로'의 업그레이드
http://it.news.danawa.com/News_List_View.php?nModeC=1&nSiteC=1&sLikeKey=keyword&sLikeValue=%BF%EC%BA%D0%C5%F5&nSeq=2346270&nBoardSeq=


[우분투 집중 점검](4)우분투, 쓸만한 OS인가? 향후 발전 가능성은?
http://it.news.danawa.com/News_List_View.php?nModeC=1&nSiteC=1&sLikeKey=keyword&sLikeValue=%BF%EC%BA%D0%C5%F5&nSeq=2348873&nBoardSeq=


[월드리포트]중국, 외산 유료 OS 대신 '우분투'를 대안으로
http://it.news.danawa.com/News_List_View.php?nModeC=1&nSiteC=1&sLikeKey=keyword&sLikeValue=%BF%EC%BA%D0%C5%F5&nSeq=2343729&nBoardSeq=

 

 

중국이 PC, 서버, 태블릿, 스마트폰 등을 총괄해서 사용할 국가 표준OS 구축을 위한 아키텍쳐로 우분투를 선택했다고 하니, 많은 기대가 됩니다.

우분투가 좋은 대안OS로 발전 되기를 기대합니다.

 

2013-12-17

허창원

 

 

Posted by 허창원
,