1

QT4 プロジェクトでリンクする必要がある PCL ライブラリを探しています。

4

2 に答える 2

2

私は解決策を見つけました。QTファイルを含む/QT/4.8.0/フォルダーがありませんでした。

これについては、彼らはまた、彼女自身のqtプロジェクトにpclを実装したいと考えています。

  • QTクリエーターをダウンロード->インストール
  • VS2010用のQT4.8.0をダウンロード->インストール
  • pclバイナリをダウンロード->インストール
  • 次のコードをプロジェクトファイルに追加します
  • PCLをお楽しみください

これは、openCVとPCLに含まれる/リンクを含む私の*.proファイルです。

#openCV
INCLUDEPATH += C:\\opencv2_4_0_VS_bin\\build\\include
LIBS += -LC:\\opencv2_4_0_VS_bin\\lib\\Debug\\ \
-lopencv_core240d \
-lopencv_highgui240d  \
-lopencv_imgproc240d  \
-lopencv_features2d240d  \
-lopencv_calib3d240d \
-lopencv_contrib240d \
-lopencv_flann240d \
-lopencv_legacy240d \
-lopencv_ml240d \
-lopencv_objdetect240d \
-lopencv_ts240d \
#-lopencv_gpu240d \
-lopencv_video240d

# PCL
INCLUDEPATH += C:\\PCL_1_6_0\\include\\pcl-1.6
INCLUDEPATH += C:\\PCL_1_6_0\\3rdParty\\Boost\\include
INCLUDEPATH += C:\\PCL_1_6_0\\3rdParty\\Eigen\\include
INCLUDEPATH += C:\\PCL_1_6_0\\3rdParty\\FLANN\\include
INCLUDEPATH += C:\\PCL_1_6_0\\3rdParty\\Qhull\\include
INCLUDEPATH += C:\\PCL_1_6_0\\3rdParty\\VTK\\include\\vtk-5.8
INCLUDEPATH += C:\\Program Files (x86)\\OpenNI\\Include

LIBS += -L"C:\Program Files (x86)\OpenNI\Lib\openNI.lib"

LIBS += -LC:\\PCL_1_6_0\\3rdParty\\Qhull\\Lib\\ \
-lqhullstatic

LIBS += -LC:\\PCL_1_6_0\\lib\\ \
-lpcl_apps_release \
-lpcl_common_release \
-lpcl_features_release \
-lpcl_filters_release \
-lpcl_io_release \
-lpcl_io_ply_release \
-lpcl_kdtree_release \
-lpcl_keypoints_release \
-lpcl_octree_release \
#-lpcl_range_image_border_extractor_release \
-lpcl_registration_release \
-lpcl_sample_consensus_release \
-lpcl_search_release \
-lpcl_segmentation_release \
-lpcl_surface_release \
-lpcl_tracking_release \
-lpcl_visualization_release

LIBS += -LC:\\PCL_1_6_0\\3rdParty\\VTK\\lib\\vtk-5.8\\ \
-lMapReduceMPI \
-lmpistubs  \
-lQVTK \
-lvtkalglib \
-lvtkCharts \
-lvtkCommon \
-lvtkDICOMParser \
-lvtkexoIIc \
-lvtkexpat \
-lvtkFiltering \
-lvtkfreetype \
-lvtkftgl \
-lvtkGenericFiltering \
-lvtkGeovis \
-lvtkGraphics \
-lvtkhdf5 \
-lvtkHybrid \
-lvtkImaging \
-lvtkInfovis \
-lvtkIO \
-lvtkjpeg \
-lvtklibxml2 \
-lvtkmetaio \
-lvtkNetCDF \
-lvtkNetCDF_cxx \
-lvtkpng \
-lvtkproj4 \
-lvtkRendering \
-lvtksqlite \
-lvtksys \
-lvtktiff \
-lvtkverdict \
-lvtkViews \
-lvtkVolumeRendering \
-lvtkWidgets \
-lvtkzlib

LIBS += -LC:\\PCL_1_6_0\\3rdParty\\FLANN\\lib\\ \
-lflann_cpp_s

LIBS += -LC:\\PCL_1_6_0\\3rdParty\\Boost\\lib\\ \
-llibboost_date_time-vc100-mt-1_49 \
-llibboost_thread-vc100-mt-1_49 \
-llibboost_filesystem-vc100-mt-1_49 \
-llibboost_system-vc100-mt-1_49 \
-llibboost_iostreams-vc100-mt-1_49

残念ながら、他のリンクの問題があります:-(

ビジュアライザー(pcl :: visualization :: PCLVisualizer)を使用しようとすると、次のようなエラーが発生します。

vtkCommon.lib(vtkDebugLeaks.obj):-1: Fehler:LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__MessageBoxA@16" in Funktion ""protected: static int __cdecl vtkDebugLeaks::DisplayMessageBox(char const *)" (?DisplayMessageBox@vtkDebugLeaks@@KAHPBD@Z)". 

(申し訳ありませんが、ドイツ語ですが、エラーLNK2019と不足しているファイルが表示されます)

vktCommon.libの外部リンクエラーのようです。このライブラリにはvtkWin32outputWindow.objファイルがありません。また、SystemTools.objファイルがありません。

私は解決策を見つけることができました。

pcl :: visualization::CloudViewerは正常に機能します。

ところで。解決策を探しています。ポイントクラウド領域(pcl :: PointIndicesで定義)に色を付けるにはどうすればよいですか。セグメンテーションから検出された1階に色を付けたいと思います。

于 2012-12-06T23:17:41.947 に答える
0

どのオペレーティング システムで作業していますか?

プロジェクト ファイルを右クリックすると、[ライブラリの追加] -> [外部ライブラリ] というオプションが表示されます。このウィンドウで、ライブラリ ファイルを選択し、ファイルの場所を含めます。.pro ファイルに include ステートメントが生成されます。

現在のプロジェクトのコンパイルに使用しているのと同じコンパイラからコンパイルされたライブラリを使用していることを確認してください。たとえば、Windows で PCL に Win32-VC10 バイナリを使用している場合は、VC10 コンパイラを使用して qt プロジェクトもコンパイルしていることを確認してください。

于 2012-12-04T13:28:59.063 に答える