2015/05/27
OpenCV 드로잉 좌표 한계
OpenCV 2.9 버전을 64비트로 빌드하여 사용하는데 큰 이미지에 도형을 그리는 과정에서 이상한 현상을 보았다.
좌표값이 32768(32K)를 넘어가는 경우 도형이 그려지지 않는 문제가 있었다.
32768 값을 넘어가면 0으로 바뀌어 버려 이 지점을 포함하는 다각형을 그리는 경우 엉뚱한 도형이 그려졌다.
내부적인 좌표 한계인지는 좀 더 알아봐야 겠지만 문제의 처리가 우선이라 ROI를 지정하여 그리는 방법으로 우회를 하였다
Original Post : http://neodreamer-dev.tistory.com/746
좌표값이 32768(32K)를 넘어가는 경우 도형이 그려지지 않는 문제가 있었다.
32768 값을 넘어가면 0으로 바뀌어 버려 이 지점을 포함하는 다각형을 그리는 경우 엉뚱한 도형이 그려졌다.
내부적인 좌표 한계인지는 좀 더 알아봐야 겠지만 문제의 처리가 우선이라 ROI를 지정하여 그리는 방법으로 우회를 하였다
Original Post : http://neodreamer-dev.tistory.com/746
2015/05/26
[MFC] VTK Hello World
천천히 VTK 를 공부하고 있다.
지난 번 라이브러리를 빌드 한 후 VTK C++ Tutorial을 하나하나씩 해보기로 하였다. 그 첫번째로 Hello World 이다.
Tutorial에서는 C++ 코드와 CMake를 이용한 빌드를 소개하고 있다. 이를 이전에 빌드한 vtkGUISupportMFC 를 이용하여 대화상자에 출력하도록 해 보았다.
Original Post : http://neodreamer-dev.tistory.com/745
지난 번 라이브러리를 빌드 한 후 VTK C++ Tutorial을 하나하나씩 해보기로 하였다. 그 첫번째로 Hello World 이다.
Tutorial에서는 C++ 코드와 CMake를 이용한 빌드를 소개하고 있다. 이를 이전에 빌드한 vtkGUISupportMFC 를 이용하여 대화상자에 출력하도록 해 보았다.
m_pvtkMFCWindow = new vtkMFCWindow(this);
m_pvtkMFCWindow->GetRenderWindow()->AddRenderer(m_pvtkRenderer);
m_pvtkRenderer->SetBackground(0.0, 0.0, 0.5);
// This creates a polygonal cylinder model with eight circumferential facets.
//
m_pCylinder = vtkCylinderSource::New();
m_pCylinder->SetResolution(8);
// The mapper is responsible for pushing the geometry into the graphics
// library. It may also do color mapping, if scalars or other attributes
// are defined.
//
m_pCylinderMapper = vtkPolyDataMapper::New();
m_pCylinderMapper->SetInputConnection(m_pCylinder->GetOutputPort());
// The actor is a grouping mechanism: besides the geometry (mapper), it
// also has a property, transformation matrix, and/or texture map.
// Here we set its color and rotate it -22.5 degrees.
m_pCylinderActor = vtkActor::New();
m_pCylinderActor->SetMapper(m_pCylinderMapper);
m_pCylinderActor->GetProperty()->SetColor(1.0000, 0.3882, 0.2784);
m_pCylinderActor->RotateX(30.0);
m_pCylinderActor->RotateY(-45.0);
// Render on MFCWindow
// Add the actors to the renderer, set the background and size
//
m_pvtkRenderer->AddActor(m_pCylinderActor);
m_pvtkRenderer->SetBackground(0.1, 0.2, 0.4);
// We'll zoom in a little by accessing the camera and invoking a "Zoom"
// method on it.
m_pvtkRenderer->ResetCamera();
m_pvtkRenderer->GetActiveCamera()->Zoom(1.5);
Original Post : http://neodreamer-dev.tistory.com/745
Labels:
Hello World
,
MFC
,
TistoryOldPost
,
VTK
,
VTK Tutorial
2015/05/23
CListCtrl 에서 Check 상태 변화 확인 하기
CListCtrl에서 Check Box를 보이게 한 후 상태 변화를 확인하기 위해 LVN_ITEMCHANGED 의 메시지 핸들러의 파라메터를 확인해 보니 Item의 Uncheck와 check 가 각각 4096(0x1000) 과 8192(0x2000) 값으로 전달 되었다.
Original Post : http://neodreamer-dev.tistory.com/744
void CDlgTestDlg::OnLvnItemchangedList2(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
if(pNMLV->uChanged & LVIF_STATE)
{
if( (pNMLV->uOldState & 0x1000) && (pNMLV->uNewState & 0x2000) )
{
TRACE("Checked Item : %d\n", pNMLV->iItem);
}
else if( (pNMLV->uOldState & 0x2000) && (pNMLV->uNewState & 0x1000) )
{
TRACE("Unchecked Item : %d\n", pNMLV->iItem);
}
}
*pResult = 0;
}
Original Post : http://neodreamer-dev.tistory.com/744
Labels:
checkbox
,
CListCtrl
,
LVN_ITEMCHANGED
,
MFC
,
TistoryOldPost
2015/05/21
Windows Shell Commands
윈도우즈는 Windows + R 키를 눌러 나오는 명령창에서 입력을 하면 특정 경로의 바로 탐색이 가능한 Shell Commands를 제공 한다.
출처:http://www.eightforums.com/tutorials/6050-shell-commands-windows-8-a.html
붉은색 명령은 windows 8에서 추가된 명령 이다.
Original Post : http://neodreamer-dev.tistory.com/743
출처:http://www.eightforums.com/tutorials/6050-shell-commands-windows-8-a.html
붉은색 명령은 windows 8에서 추가된 명령 이다.
Shell Command | Path of Folder it Opens |
shell:AccountPictures | %AppData%\Microsoft\Windows\AccountPictures |
shell:AddNewProgramsFolder | Control Panel\All Control Panel Items\Get Programs |
shell:Administrative Tools | C:\Users\(user-name)\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Administrative Tools |
shell:AppData | C:\Users\(user-name)\AppData\Roaming |
shell:AppsFolder | Applications |
shell:Application Shortcuts | C:\Users\(user-name)\AppData\Local\Microsoft\Windows\Application Shortcuts |
shell:AppUpdatesFolder | Installed Updates |
shell:Cache | C:\Users\(user-name)\AppData\Local\Microsoft\Windows\Temporary Internet Files |
shell:Camera Roll (8.1 only) | C:\Users\(user-name)\Pictures\Camera Roll |
shell:CD Burning | C:\Users\(user-name)\AppData\Local\Microsoft\Windows\Burn\Burn |
shell:ChangeRemoveProgramsFolder | Control Panel\All Control Panel Items\Programs and Features |
shell:Common Administrative Tools | C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Administrative Tools |
shell:Common AppData | C:\ProgramData |
shell:Common Desktop | C:\Users\Public\Desktop |
shell:Common Documents | C:\Users\Public\Documents |
shell:CommonDownloads | C:\Users\Public\Downloads |
shell:CommonMusic | C:\Users\Public\Music |
shell:CommonPictures | C:\Users\Public\Pictures |
shell:Common Programs | C:\ProgramData\Microsoft\Windows\Start Menu\Programs |
shell:CommonRingtones | C:\ProgramData\Microsoft\Windows\Ringtones |
shell:Common Start Menu | C:\ProgramData\Microsoft\Windows\Start Menu |
shell:Common Startup | C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup |
shell:Common Templates | C:\ProgramData\Microsoft\Windows\Templates |
shell:CommonVideo | C:\Users\Public\Videos |
shell:ConflictFolder | Control Panel\All Control Panel Items\Sync Center\Conflicts |
shell:ConnectionsFolder | Control Panel\All Control Panel Items\Network Connections |
shell:Contacts | C:\Users\(user-name)\Contacts |
shell:ControlPanelFolder | Control Panel\All Control Panel Items |
shell:Cookies | C:\Users\(user-name)\AppData\Local\Microsoft\Windows\INetCookies |
shell:Cookies\Low | C:\Users\(user-name)\AppData\Local\Microsoft\Windows\INetCookies\Low |
shell:CredentialManager | C:\Users\(user-name)\AppData\Roaming\Microsoft\Credentials |
shell:CryptoKeys | C:\Users\(user-name)\AppData\Roaming\Microsoft\Crypto |
shell:desktop | Your desktop folder |
shell:device Metadata Store | C:\ProgramData\Microsoft\Windows\DeviceMetadataStore |
shell:documentsLibrary | Libraries\Documents |
shell:downloads | C:\Users\(user-name)\Downloads |
shell:dpapiKeys | C:\Users\(user-name)\AppData\Roaming\Microsoft\Protect |
shell:Favorites | C:\Users\(user-name)\Favorites |
shell:Fonts | C:\Windows\Fonts |
shell:Gadgets | C:\Users\(user-name)\AppData\Local\Microsoft\Windows Sidebar\Gadgets |
shell:Games | Games |
shell:GameTasks | C:\Users\(user-name)\AppData\Local\Microsoft\Windows\GameExplorer |
shell:History | C:\Users\(user-name)\AppData\Local\Microsoft\Windows\History |
shell:HomeGroupCurrentUserFolder | Homegroup folder of current user |
shell:HomeGroupFolder | Homegroup |
shell:ImplicitAppShortcuts | C:\Users\(user-name)\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\ImplicitAppShortcuts |
shell:InternetFolder | Internet Explorer |
shell:Libraries | Libraries |
shell:Links | C:\Users\(user-name)\Links |
shell:Local AppData | C:\Users\(user-name)\AppData\Local |
shell:LocalAppDataLow | C:\Users\(user-name)\AppData\LocalLow |
shell:MusicLibrary | Libraries\Music |
shell:MyComputerFolder | Computer (Windows 8) or This PC (Windows 8.1) |
shell:My Music | C:\Users\(user-name)\Music |
shell:My Pictures | C:\Users\(user-name)\Pictures |
shell:My Video | C:\Users\(user-name)\Videos |
shell:NetHood | C:\Users\(user-name)\AppData\Roaming\Microsoft\Windows\Network Shortcuts |
shell:NetworkPlacesFolder | Network |
shell:Personal | C:\Users\(user-name)\Documents |
shell:PicturesLibrary | Libraries\Pictures |
shell:PrintersFolder | All Control Panel Items\Printers |
shell:PrintHood | C:\Users\(user-name)\AppData\Roaming\Microsoft\Windows\Printer Shortcuts |
shell:Profile | C:\Users\(user-name) |
shell:ProgramFiles | C:\Program Files |
shell:ProgramFilesCommon | C:\Program Files\Common Files |
shell:ProgramFilesCommonX64 | C:\Program Files\Common Files (64-bit Windows only) |
shell:ProgramFilesCommonX86 | C:\Program Files (x86)\Common Files (64-bit Windows only) |
shell:ProgramFilesX86 | C:\Program Files (x86) (64-bit Windows only) |
shell:ProgramFilesX64 | C:\Program Files (64-bit Windows only) |
shell:Programs | C:\Users\(user-name)\AppData\Roaming\Microsoft\Windows\Start Menu\Programs |
shell:Public | C:\Public |
shell:PublicAccountPictures | C:\Users\Public\AccountPictures |
shell:PublicGameTasks | C:\ProgramData\Microsoft\Windows\GameExplorer |
shell:PublicLibraries | C:\Users\Public\Libraries |
shell:Quick Launch | C:\Users\(user-name)\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch |
shell:Recent | C:\Users\(user-name)\AppData\Roaming\Microsoft\Windows\Recent |
shell:RecordedTVLibrary | Libraries\Recorded TV |
shell:RecycleBinFolder | Recycle Bin |
shell:ResourceDir | C:\Windows\Resources |
shell:Ringtones | C:\ProgramData\Microsoft\Windows\Ringtones |
shell:Roamed Tile Images | C:\Users\(user-name)\AppData\Local\Microsoft\Windows\RoamedTileImages |
shell:Roaming Tiles | C:\Users\(user-name)\AppData\Local\Microsoft\Windows\RoamingTiles |
shell:SavedGames | C:\Users\(user-name)\Saved Games |
shell:Screenshots (8.1 only) | C:\Users\(user-name)\Pictures\Screenshots |
shell:Searches | C:\Users\(user-name)\Searches |
shell:SearchHomeFolder | search-ms: |
shell:SendTo | C:\Users\(user-name)\AppData\Roaming\Microsoft\Windows\SendTo |
shell:SkyDrive (8.1 only) | SkyDrive shell folder |
shell:SkyDriveCameraRoll (8.1 only) | C:\Users\(user-name)\SkyDrive\Pictures\Camera Roll |
shell:SkyDriveDocuments (8.1 only) | C:\Users\(user-name)\SkyDrive\Documents |
shell:SkyDrivePictures (8.1 only) | C:\Users\(user-name)\SkyDrive\Pictures |
shell:Start Menu | C:\Users\(user-name)\AppData\Roaming\Microsoft\Windows\Start Menu |
shell:Startup | C:\Users\(user-name)\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup |
shell:SyncCenterFolder | Control Panel\All Control Panel Items\Sync Center |
shell:SyncResultsFolder | Control Panel\All Control Panel Items\Sync Center\Sync Results |
shell:SyncSetupFolder | Control Panel\All Control Panel Items\Sync Center\Sync Setup |
shell:System | C:\Windows\System32 |
shell:SystemX86 | C:\Windows\SysWOW64 |
shell:SystemCertificates | C:\Users\(user-name)\AppData\Roaming\Microsoft\SystemCertificates |
shell:Templates | C:\Users\(user-name)\AppData\Roaming\Microsoft\Windows\Templates |
shell:ThisPCDesktopFolder (8.1 only) | Desktop |
shell:User Pinned | C:\Users\(user-name)\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned |
shell:UserProfiles | C:\Users |
shell:UsersFilesFolder | C:\Users\(user-name) |
shell:UsersFilesFolder\Desktop | C:\Users\(user-name)\Desktop |
shell:UsersLibrariesFolder | Libraries |
shell:VideosLibrary | Libraries\Videos |
shell:Windows | C:\Windows |
Original Post : http://neodreamer-dev.tistory.com/743
Labels:
Shell Command
,
TistoryOldPost
,
windows 7
,
Windows 8
Windows 10 업데이트 후 vcomp110d.dll 못 찾는 문제
Windows 10 Preview 버전을 사용하고 있는데 10074 버전에서 10122로 업데이트를 한 후 Visual C++ 프로젝트를 실행하면 vcomp110d.dll 파일을 찾을 수 없다는 에러메시지를 뿜어 댔다.
재배포 패키지를 설치해 봐도 해결이 되지 않았다.
인터넷을 검색하여 "Vcomp110.dll이(가) 없습니다 / 찾을 수 없음 오류 메시지 해결 방법"의 몇가지를 따라해 봤지만 소용이 없었다.
실제로 파일을 없는지 찾아 보던 중 Windows.old 폴더를 발견했다. 아마도 10074 버전에서 사용하던 파일들로 유추가 되었고 그 곳에는 vcomp110d.dll이 존재하였다. 그래서 두 파일(vcomp110.dll, vcomp110d.dll)을 windows\system32 폴더로 복사하였다.
C:\>copy c:\Windows.old\Windows\System32\vcomp110.dll c:\Windows\System32
1 file(s) copied.
C:\>copy c:\Windows.old\Windows\System32\vcomp110d.dll c:\Windows\System32
1 file(s) copied.
이후 문제가 해결 됨
Original Post : http://neodreamer-dev.tistory.com/742
재배포 패키지를 설치해 봐도 해결이 되지 않았다.
인터넷을 검색하여 "Vcomp110.dll이(가) 없습니다 / 찾을 수 없음 오류 메시지 해결 방법"의 몇가지를 따라해 봤지만 소용이 없었다.
실제로 파일을 없는지 찾아 보던 중 Windows.old 폴더를 발견했다. 아마도 10074 버전에서 사용하던 파일들로 유추가 되었고 그 곳에는 vcomp110d.dll이 존재하였다. 그래서 두 파일(vcomp110.dll, vcomp110d.dll)을 windows\system32 폴더로 복사하였다.
C:\>copy c:\Windows.old\Windows\System32\vcomp110.dll c:\Windows\System32
1 file(s) copied.
C:\>copy c:\Windows.old\Windows\System32\vcomp110d.dll c:\Windows\System32
1 file(s) copied.
이후 문제가 해결 됨
Original Post : http://neodreamer-dev.tistory.com/742
Labels:
TistoryOldPost
,
vcomp110.dll
,
vcomp110d.dll
,
Windows 10 Preview
2015/05/16
MFC Unicode project 에서 vtkMFCWindow 생성 문제
2015/03/31 - [Dev Story/Tips] - VTK 6.2 빌드하기
이전 글에서 설명한대로 생성한 라이브러리를 테스트 해 보았다.
예제 코드를 복사하여 실행해 보았는데 컴파일에는 문제가 없었는데 실행시 vtkMFCWindow 생성하는 부분에서 아래와 같은 에러가 발생하였다.
쉽게 해결 방법을 찾지 못하다 구글 검색을 통해 해결 방법을 알게 되었다. 비슷한 문제로 고생을 한 개발자가 있었다. 해결 방법은 프로젝트의 문자셋을 멀티바이트로 변경하면 문제가 없다는 것이였다. 하여 프로젝트의 문자셋을 유니코드에서 멀티바이트로 변경하니 실행에 문제가 없었다.
이제 유니코드가 대세임을 감안하면 다른 해결 책을 찾아야 했다. 그래서 VTK 라이브러리중 vtkGUISupportMFC 를 유니코드로 변경하여 라이버리를 만들어 사용하니 사용하는 프로젝트가 유니코드이어도 정상적으로 동작을 하였다
Original Post : http://neodreamer-dev.tistory.com/741
이전 글에서 설명한대로 생성한 라이브러리를 테스트 해 보았다.
예제 코드를 복사하여 실행해 보았는데 컴파일에는 문제가 없었는데 실행시 vtkMFCWindow 생성하는 부분에서 아래와 같은 에러가 발생하였다.
쉽게 해결 방법을 찾지 못하다 구글 검색을 통해 해결 방법을 알게 되었다. 비슷한 문제로 고생을 한 개발자가 있었다. 해결 방법은 프로젝트의 문자셋을 멀티바이트로 변경하면 문제가 없다는 것이였다. 하여 프로젝트의 문자셋을 유니코드에서 멀티바이트로 변경하니 실행에 문제가 없었다.
이제 유니코드가 대세임을 감안하면 다른 해결 책을 찾아야 했다. 그래서 VTK 라이브러리중 vtkGUISupportMFC 를 유니코드로 변경하여 라이버리를 만들어 사용하니 사용하는 프로젝트가 유니코드이어도 정상적으로 동작을 하였다
Original Post : http://neodreamer-dev.tistory.com/741
Labels:
MBCS
,
TistoryOldPost
,
UNICODE
,
VTK
,
vtkGUISupportMFC
,
vtkMFCWindow
2015/05/07
Hello OpenCV Viz
이전 포스팅을 통해 생성했던 OpenCV 의 3D Visualization module 을 테스트 해 보았다.
2015/05/07 - [Dev Story/Tips] - OpenCV viz 빌드하기
필요한 것으로는 VTK 헤더파일과 VTK와 함께 빌드후 생성 된 lib 파일과 dll 파일 그리고 OpenCV 헤더파일이 필요하다. OpenCV 를 빌드할 때 INSTALL 프로젝트를 빌드했다면 install 경로에 모든 헤더파일이 있지만 그렇지 않다면 module\viz\include 폴더에 있는 viz 관련 헤더가 필요하다.
아직은 Viz에 대한 자세한 사항을 몰라 sample과 reference 문서를 보고 간단하게 테스트 코드를 만들어 보았다.
아래 코드는 테스트를 위해 사용된 코드이다.
아래 이미지는 위의 코드를 실행하면 보여지는 화면 이다.
프로그램이 정상적으로 실행되는 것으로 볼 때 OpenCV에 VTK 라이브러리를 포함 한 빌드에는 문제가 없어 보인다. 화면 출력은 3D는 자체 좌표계로 운영되고 마우스 컨트롤로 변경할 수 있으며 2D는 화면의 좌 하단을 원점으로 출력 된다.
Viz 운영에 있어 중요한 객체는 두 가진 인데 그려지는 윈도우를 담당하는 Viz3D 와 그려지는 내용을 담당하는 Widget 이다. Viz3D의 경우 Widget을 화면에 출력해 주는 역할을 한다
Original Post : http://neodreamer-dev.tistory.com/740
2015/05/07 - [Dev Story/Tips] - OpenCV viz 빌드하기
필요한 것으로는 VTK 헤더파일과 VTK와 함께 빌드후 생성 된 lib 파일과 dll 파일 그리고 OpenCV 헤더파일이 필요하다. OpenCV 를 빌드할 때 INSTALL 프로젝트를 빌드했다면 install 경로에 모든 헤더파일이 있지만 그렇지 않다면 module\viz\include 폴더에 있는 viz 관련 헤더가 필요하다.
아직은 Viz에 대한 자세한 사항을 몰라 sample과 reference 문서를 보고 간단하게 테스트 코드를 만들어 보았다.
아래 코드는 테스트를 위해 사용된 코드이다.
// Header
// OpenCV
#include "opencv2/opencv.hpp"
#include "opencv2/viz.hpp"
#include "opencv2/viz/widget_accessor.hpp""
#include "vtkPoints.h"
#include "vtkTriangle.h"
#include "vtkCellArray.h"
#include "vtkPolyData.h"
#include "vtkPolyDataMapper.h"
#include "vtkIdList.h"
#include "vtkActor.h"
#include "vtkProp.h"
#pragma comment(lib, "../OpenCV_VTK_VS2013/x86/lib/Release/opencv_core300.lib")
#pragma comment(lib, "../OpenCV_VTK_VS2013/x86/lib/Release/opencv_imgproc300.lib")
#pragma comment(lib, "../OpenCV_VTK_VS2013/x86/lib/Release/opencv_highgui300.lib")
#pragma comment(lib, "../OpenCV_VTK_VS2013/x86/lib/Release/opencv_viz300.lib")
// Source
/// Create a window
cv::viz::Viz3d vizHello("Hello Viz");
vizHello.setWindowSize(cv::Size(600, 480));
// Coordinate
vizHello.showWidget("Coordinate", cv::viz::WCoordinateSystem(1));
// Text 3D
cv::viz::WText3D wdg3DText("Hello OpenCV Viz Text3D"
, cv::Point3d(0.5, 0.5, 0.5), 0.2
, false, cv::viz::Color::green());
vizHello.showWidget("Text 3D", wdg3DText);
// Text 2D
cv::Size szWnd = vizHello.getWindowSize();
cv::viz::WText wdg2DText("Hello OpenCV Viz Text2D"
, cv::Point(szWnd.width / 4, szWnd.height / 4)
, 20, cv::viz::Color::yellow());
vizHello.showWidget("Text 2D", wdg2DText);
vizHello.spin();
아래 이미지는 위의 코드를 실행하면 보여지는 화면 이다.
프로그램이 정상적으로 실행되는 것으로 볼 때 OpenCV에 VTK 라이브러리를 포함 한 빌드에는 문제가 없어 보인다. 화면 출력은 3D는 자체 좌표계로 운영되고 마우스 컨트롤로 변경할 수 있으며 2D는 화면의 좌 하단을 원점으로 출력 된다.
Viz 운영에 있어 중요한 객체는 두 가진 인데 그려지는 윈도우를 담당하는 Viz3D 와 그려지는 내용을 담당하는 Widget 이다. Viz3D의 경우 Widget을 화면에 출력해 주는 역할을 한다
Original Post : http://neodreamer-dev.tistory.com/740
Labels:
3D
,
OpenCV
,
TistoryOldPost
,
Visualization
,
Viz
,
VTK
OpenCV viz 빌드하기
OpenCV 2.4.9 버전부터 지원한 3D visualization module 인 viz를 사용해보고자 빌드를 해 보았다.
빌드를하기 위해서는 VTK(Visual Tool Kit)이 필요하다. 3D visualization module 이 VTK를 기반으로 만들어졌기 때문이다.
우선 VTK site(http://www.vtk.org/)에서 소스를 받아 아래 설명에따라 빌드를 한다.
2015/03/31 - [Dev Story/Tips] - VTK 6.2 빌드하기
VTK 빌드를 마친 후 OpenCV를 빌드하여야 한다. 이 때 VTK 를 사용할 수 있도록 설정을 해 주어야 한다.
- WITH_VTK 선택
- VTK_DIR 항목에 위에서 빌드한 VTK 경로를 설정. 이 때 install 경로가 아닌 cmake설정에 쓰인 Where to build binaries 경로를 입력 한다.
- BUILD_opencv_viz 항목 선택
- BUILD_opencv_world 항목은 선택하지 않는다. (빌드시 에러가 발생하며 원인과 해결책은 찾지 못하였음)
2010/04/07 - [Dev Story] - OpenCV 2.1 컴파일 하기
2010/10/17 - [Dev Story] - OpenCV 2.1 + TBB 를 Visual Studio 2010 에서 컴파일하기
2011/01/18 - [Dev Story/Tips] - OpenCV 2.2 + Intel TBB 를 VS2010 에서 컴파일하기(32/64비트 분리)
OpenCV 를 빌드할 때 INSTALL project를 빌드하면 viz 모듈에 포함되어 있는 소스파일이 install 경로의 include 폴더에 복사가 되지만 ALL_BUILD 만 빌드하면 수동으로 viz 모듈의 헤더파일을 복사해야 한다.
위 작업을 Visual Studio 2013 버전으로 OpenCV 3.0 RC1 과 VTK 6.2.0을 이용하여 진행하였으며 VTK는 Static으로 빌드하였다.
이 과정에서 별다른 문제가 발생하지 않고 결과물이 생성 되었다. 일단 빌드는 성공하였고 이를 사용하는 것은 앞으로 조금씩 공부를 하며 진행할 예정이다.
Original Post : http://neodreamer-dev.tistory.com/739
Labels:
3D Visualization
,
OpenCV
,
TistoryOldPost
,
Viz
,
VTK
Subscribe to:
Posts
(
Atom
)