기존 포스트들은 예제들을 가지고 했었는데 간단한 기능에 대해서 소개해보는 것을 해보고자 합니다. 그중 이번에 소개할 내용은 이미지를 3D화 시키는 내용입니다. 블랜드 상에서는 ViewPort3D라는 이름으로 포함되어 있습니다. 우선은 WPF로 프로젝트를 아무거나 만들어 봅시다. 그리고 사진을 하나 첨부시켜봅시다. 사진을 첨부하다보면 위와 같은 메세지가 뜨게 됩니다. 경고 메세지는 아닌데 무슨 내용일까 싶은데 내용은 즉 이미지가 250kb이상의 크기가 되기 때문에 나중에 실행파일로 만들때 포함시킬 수 있도록 복사하겠느냐를 물어보는 겁니다. 물론 하는 것이 좋습니다. 다들 아시겠지만 블랜드 상에서는 미리보기, 즉 섬네일이 지원됩니다. 그래서 프로젝트 창에서 해당 사진에 마우스를 올리면 와 같이 미리보기가 되..
이번에 다뤄볼 내용은 간단한 디지털 시계를 만드는 방법입니다. 무척이나 간단한 앱이지요. 조금더 응용을 해서 초시계까지 만드는 것을 목적으로 하고 있습니다. 우선 Blank Application으로 Timer라는 이름의 프로젝트를 생성합니다. 처음으로는 시간을 불러올 TextBlock을 집어넣어야 겠지요? 중앙에 오도록 간단하게 처리합니다. 당연히 Text에는 아무것도 집어넣지 않았기 때문에 디자인뷰상에서는 아무것도 안뜹니다. 정작 집어넣을 내용은 코드 부분에 들어가겠지요. 시간을 다루는 자료형은 DispatcherTimer라는 자료형으로 정의됩니다. 각각에 Interval 이나 Tick같은 속성이 포함되어 있으며, 그것들을 적절하게 활용하면 됩니다. 우선은 가상으로 내재되어 있는 이벤트(지난 포스트에서..
지난 시간에는 Kinect가 들어가지는 않지만 3차원 공간을 생성하고 그안에서 Camera View를 컨트롤 할 수 있는 KinectOrbit이라는 것을 다뤄봤습니다. 이번 포스트에서는 실제로 KinectOrbit을 사용해서 Kinect를 이용할 수 있는 Kinect Space를 생성해보고자 합니다. 우선 SimpleOpenNI 라이브러리에 들어있는 예제를 살펴보겠습니다. 정상적으로 설치하셨다면 Files 메뉴 항목에 Examples 라는 항목이 있을겁니다. 그걸 선택하면 새로운 창이 형성되는데 제일 밑에 내려가 보면 SimpleOpenNI 예제가 있습니다. 그중에서 DepthMap3D를 한번 보겠습니다. 그걸 실행시키면 다음과 같은 영상을 얻게 됩니다. 이 예제에서 가장 중요한 부분은 아래 코드입니다...
어떤 분이 저한테 그러셨습니다. 사람은 자기 자신을 PR할줄 알아야 한다고 말이지요. 저도 집에 돌아오면서 곰곰히 생각해보고 마침 감성이 무르익는 야심한 밤에 한번 글을 적어보고자 합니다. 물론 저에 대한 내용이므로 기술적인 내용을 바라고 보시는 분이라면 이글은 그런 것과 전혀 무관함을 알려드립니다. 아시는 분도, 눈치채신 분도 계시겠지만 저는 MS에서 진행하는 학생 프로그램인 Microsoft Student Partner 5기로 활동했습니다. 제가 처음 뽑힐 당시에는 모집분야가 기획자, 개발자, 디자이너 이렇게 3파트로 뽑았습니다. 저는 그 중에서 전자과이고, 프로그래밍을 못하니까 하는 생각에 그냥 기획자로 지원했고, 뽑혔습니다. 그때 당시에는 그런 생각으로 기획이나 할까 하는 마음이었는데 지금와서 맨..
아마 키넥트를 관심있어 하시는 분이라면 컴퓨터 비전을 접목시켜야 하겠다는 생각을 하실거고 당연히 OpenCV를 어떻게 적용시켜야 할까 하시는 분이 계실겁니다. 저 또한 그럴려고 노력하는 사람 중에 하나이고요.그런데 문제는 여기서 발생합니다. OpenCV는 다들 알다시피 c++ 기반의 라이브러리입니다. 그래서 필요한 라이브러리 파일과 dll, include 파일을 일일이 설정해줘야 한다는 불편함이 있습니다. 그에 비해서 키넥트는 .net 기반의 자료들이 무척 많습니다. 물론 C++ 기반의 코딩도 가능하지만 실제로 검색해보면 자료가 거의 없는 걸 보실 수 있을 겁니다. 아무튼 키넥트에 비전을 접목시키려면 Kinect를 C++로 개발을 하던가 아니면 OpenCV를 C# .net으로 처리하던가의 방법을 택해야 ..
지난 포스트에서는 3D 개체를 생성하고 그걸 마우스의 움직임에 따라서 달리 보이는 것까지 다뤄봤습니다. 그런데 마우스로 할 수 있는 건 단 하나, 그냥 박스를 움직이는데 그쳤습니다. 보통 다른 Visualization CAD 툴 상에서는 마우스로 줌인/아웃 이나 회전같은 마우스로서 시점을 변경시킬 수 있는 기능들이 내장되어 있습니다. 역시 프로세싱에도 그런 라이브러리가 존재합니다. 그래서 한번 소개해드리고자 합니다. 지난 포스트의 서두에서도 언급했었지만 우리가 3D라는 것을 인지하기 위해서는 원근감이라는 것을 이용해서 표현한다고 했었지요. 그리고 사용자가 가지는 제한점은 바로 시점이 고정되어 있는 겁니다. 만약 시점을 이동시킬 수만 있다면 그에 따른 입체감 표현은 더욱 쉬워질겁니다. 이 때 필요한 라이브..
키넥트는 Depth 카메라입니다. 일반적인 RGB 카메라와 다른 점이라면 RGB는 그 보는 그대로가 정보인 것이고 Depth라고 하는 것은 보는 그대로가 아닌 하나하나의 픽셀속에 깊이에 대한 정보가 들어있는 것이지요. 그래서 보통 이미지 프로세싱을 하는데 있어서 RGB는 단순히 보는 것에 대한 정보만 뽑을 수 있기 때문에 삼차원적으로 모델링하는 방법이 매우 복잡합니다. 굉장히 어려운 수식도 들어가야 되고 상대적인 비율을 통해 모델링을 추구하기 때문에 정확하지도 않습니다. 이런 문제를 해결해준 것이 바로 ToF 카메라 방식인데 키넥트도 어떻게 보면 이런 종류안에 들어가겠지요. 이번 포스팅에서는 그런 키넥트를 프로세싱에서 다루는데 앞서서 3D라는 정보를 뽑아내고자 합니다. 실질상으로 우리가 스크린을 통해서 ..
요즘 계속 보고 있는 내용이지만 참 키넥트와 아두이노는 전자 업계에선 아주 큰 화두가 될거라 확신합니다. 아두이노라는 Physical Computing 과 키넥트의 Vision 이 결합된다면 세상에 편리한 도구가 얼마든지 나올거라고 생각되네요. 저도 쉬는 시간에 다루고 있는 내용이 바로 이 두개를 어떻게 하면 결합시킬 수 있을까 하는 겁니다. 그런 와중에 괜찮은 툴을 하나 발견해서 여러분께 소개해드리고자 합니다. 여러분은 회로 설계시 어떤 CAD 툴을 사용하십니까? 뭐 전자과 이신분은 어떤 경로(?)를 거쳐서 얻은 Cadence OrCAD를 많이 사용하실 겁니다. 그중에 가장 많이 사용되는 것이 Pspice가 될 것이고요. 물론 편리합니다. 프로브만 올리고 시뮬레이션만 돌리면 결과값이 쫙 나오기 때문에 ..
혹시 일전에 XNA로 하는 Kinect Programming 기억하시는지요? 아마 표지가 보라색이어서 해외에서는 Purple Book 이라고 알려진 책이 바로 그 겁니다. 그 책의 저자가 바로 Rob Miles라는 분인데 영국의 Hull 대학 교수님이시고, c# MVP 입니다. 아마 제가 알기론 이번 이매진 컵에서도 2라운드 지명식때 발표자였던 걸로 기억합니다. 그분이 쓰신 책인 Start Here! Learn the Kinect API 책이 출간했습니다. 일전에 Beginning Kinect Programming with the microsoft kinect sdk 라는 책을 소개해드린 적이 있었는데 그 책은 아무래도 C#에 대한 이해가 있는 사람이 보기에 적절한 책이었던 것 같습니다. 이번책은 MS ..
7월 17일을 기점으로 그동안 베일에 가려져왔었던 Office 15가 Office 2013이라는 이름으로 CP 버전을 내놓았습니다. 현재는 일반인에게 무료로 제공되고 있고 해당 사이트에서 다운로드 받을 수 있습니다.http://www.microsoft.com/office/preview/en (현재는 영어과 에스파냐어만 지원하지만 실제로 한글 폰트는 인식하기 때문에 사용에 지장이 없습니다.인스톨 과정부터 매우 화려합니다. Office가 실생활에서 어떻게 쓰이는 지를 간단하게 보여주는 동영상이 설치 과정속에 포함되어 있습니다. 무엇보다도 기존에 Windows 8과 방향을 같이하면서 클라우드를 중시하는 듯한 느낌을 줍니다. 당연히 ms live 계정과 연동시키면서 ms의 클라우드 드라이브인 skydrive에서..
막상 넷두이노 개발환경을 구성하다보니까 Extension manager에서 신기한 tool을 발견했습니다. 엇? 아두이노 플러그인? 아두이노는 자바 베이스 프로젝트인데...그런데 누가 VS상에서도 개발할 수 있게끔 addin을 개발했습니다. 그래서 그 방법을 소개해드리고자 합니다. 물론 그냥 스케치툴상에서 개발하는 것과 거의 비슷합니다. 그래서 필요없으신분은 그냥 이번 포스트를 스킵하시기 바랍니다. 자 위의 항목으로 들어가도 되고 링크를 따라서 들어가도 됩니다.http://www.visualmicro.com/ 바로 Visualmicro라는 이름으로 진행되어왔던 프로젝트였는데 7월 2일을 기해서 정식판이 나왔습니다. 일단은 받아둡니다. 링크를 통하면 바로 받을 수 있습니다.http://visualmicro..
아두이노는 다들 많이 들어보셨을 겁니다. 그런데 넷두이노는 뭔가가 생소하고 우리나라에 하는 사람이 거의 없는 것처럼 보입니다. 실상 네이버에서 넷두이노를 처봐도 관련 정보가 많이 안나오고 있습니다. 저야 지난 포스트에서도 언급했다시피 아마존을 통한 직배송을 구했었고 할일이 많아서 늘어놓던 중에 그냥 한 글을 올리고자 합니다. 우선 넷두이노는 .NET Micro Framework가 내장된 ARM 프로세서를 기반으로 동작합니다. .net에서도 알 수 있듯이 ms에서 개발하고 대중에 오픈 소스로 공개한 프레임워크입니다. 그래서 아두이노가 스케치 툴로 코드를 작성했던 것과 달리 넷두이노는 Visual Studio를 통해서 개발할 수 있습니다. 무엇보다도 인텔리센스가 지원되서 사용자가 조금더 편리하게 코딩할 수 ..
Processing의 Kinect 라이브러리인 SimpleOpenNI를 사용하면 정말로 간단하면서 다양한 키넥트 어플리케이션을 구현할 수 있습니다. 이와 관련된 책들도 현재 많이 나오고 있습니다. 거기서 제일 처음 나오는 프로젝트들 중 하나가 바로 가장 근접점을 뽑아내는 것입니다. 이를 통해서 메모리로부터 어떤 픽셀이 가까운지를 감지할 수 있는 중요한 예제이기 때문이지요. 잠깐 요약을 하자면 픽셀의 데이터는 1차원적으로 쭉 늘어진 배열에서 뽑아오는 것이기 때문에 그 중 하나를 뽑으려면 그것에 관한 정의를 잘 내려야 한다고 했었지요. 이번에도 관련 예제를 다뤄보겠습니다. 우선 라이브러리 삽입 및 자료형 정의가 전제되어야 하겠습니다.그리고 사전에 setup에 들어갈 부분은 항상 맨먼저 언급되었던 내용이니까 ..
MSDN Magazine의 전신인 Microsoft System Journal 에 소개되었던 가장 최초의 프로그램은 WHATSIZE라는 프로그램입니다. 이 프로그램의 역할은 단순하게 지금 띄워져 있는 창의 크기를 보여주는 역할을 했고, 그 창의 변화를 감지해서 크기를 실시간으로 알려줍니다. 그 때 당시에는 WM_PAINT라는 API가 있어서 WHATSIZE로부터 받은 데이터를 화면에 그대로 뿌려줬었다고 합니다. Windows 8 API를 구성하고 있는 WinRT는 그 때와는 조금 다른 방식으로 글자를 화면상에 뿌려줍니다. 그 때 처럼 직접적으로 원할 때 화면상에 글자를 적는 것이 아니라 실질적으로는 (물론 .net에서는) TextBlock을 삽입함으로써 표현할 수 있습니다. 다른 요소들도 직접적으로 그걸..
- Total
- Today
- Yesterday
- Variance
- dynamic programming
- PowerPoint
- reward
- Policy Gradient
- 딥러닝
- ColorStream
- bias
- Offline RL
- RL
- SketchFlow
- Windows Phone 7
- Expression Blend 4
- 강화학습
- Kinect SDK
- Kinect
- Pipeline
- Kinect for windows
- processing
- windows 8
- 한빛미디어
- arduino
- DepthStream
- Distribution
- End-To-End
- TensorFlow Lite
- 파이썬
- Off-policy
- ai
- Gan
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |