トップページ -> 実践知識 -> 3次元点群データ,MeshLab -> Python から libpcl を使ってみる(GitHub の davidcaron/pclpy を使用)
[サイトマップへ], サイト内検索:

Python から libpcl を使ってみる(GitHub の davidcaron/pclpy を使用)

サイト構成 連絡先,業績 実践知識 コンピュータ 教材 サポートページ

目次

利用条件などは利用者において確認してください

サイト内の関連Webページ:

参考Webページ

謝辞:pclpy の作者に感謝します


前準備

Python, git, 7zip のインストール

以下,Windows に Python, git, 7zip をインストール済みであるものとして説明を続ける.


隔離された Python 環境の作成

  1. 今から作成するPython 環境の名前と、Pythonのバージョンを決めておく

  2. Windows のコマンドプロンプトを実行する.

  3. 隔離された Python 環境を作成する

    端末で,次のコマンドを実行.

    conda create -n py36 python=3.6
    

  4. Python 環境が作成できたことを確認
    conda info -e 
    

これで、もとからの Python 環境と, 新規作成されたPython 環境(Python のバージョン 3.6名前は py36)の共存できた。


新規作成された Python 環境を使いたいとき


隔離された Python 環境で、インストールの前準備を行う

いま作成した Python 環境で、パッケージの更新などの前準備を行う

  1. Windows で、コマンドプロンプトを実行

  2. Python 環境を有効にする

    端末で,次のコマンドを実行.

    activate py36 
    

  3. Anaconda の conda パッケージの更新、古い conda パッケージファイルの削除

    「conda config --remove channels conda-forge」は,conda のチャンネルに「conda-forge」が入っていたら削除する操作(エラーメッセージが出たとしても無視してください).

    conda config --remove channels conda-forge
    

    conda upgrade --all
    

    conda clean --packages
    


    (途中省略)


    (以下省略)

  4. conda の動作確認

    エラーメッセージが出ないことを確認

    conda info
    


davidcaron/pclpy のインストール

  1. VS 2019用 x64 Native Tools コマンドプロンプトを開く

    Windows のメニューで「Visual Studio 2019」の下の「x64 Native Tools コマンドプロンプト (Command Prompt)」(あるいは類似名のもの)を選ぶ

    ※ 「x64 Native Tools コマンドプロンプト (Command Prompt)」がないときは, MSVC ビルドツールのインストールを行う. MSVC ビルドツールのインストール手順は,「別のページ」で説明している.

  2. Python 環境を有効にする

    「activate py36 」は Python 環境(名前はpy36)を有効にするためのコマンド(各自の環境の名前にあわせること

    activate py36 
    

    「Could not find conda environment: py36」というメッセージが出たときは、上の「隔離された Python 環境の作成」を行う

  3. 前提パッケージのインストール

    前提パッケージは、 https://github.com/davidcaron/pclpy/blob/master/requirements.txt, https://github.com/davidcaron/pclpy/blob/master/requirements_dev.txt で指定されている

    conda install -y numpy cython  ^
      pybind11 PyYAML inflection unidecode pytest ply
    

    pip install laspy pclpy_dependencies CppHeaderParser generators strict-functions
    

  4. pclpy のインストール

    README.md の記述に従う

    pip install pclpy 
    

  5. pclpy のソースコードをダウンロードしておく

    mkdir c:\pytools
    cd c:\pytools
    rmdir /s /q pclpy
    cd c:\pytools
    git clone https://github.com/davidcaron/pclpy
    

  6. 動作確認

    https://github.com/davidcaron/pclpy/blob/master/README.md に記載の Python プログラムを実行してみる

    エラーメッセージが出なければOKとする

    import pclpy
    from pclpy import pcl
    
    point_cloud = pclpy.read("C:/pytools/pclpy/pclpy/tests/test_data/street.las", "PointXYZRGBA")
    mls = pcl.surface.MovingLeastSquaresOMP.PointXYZRGBA_PointNormal()
    tree = pcl.search.KdTree.PointXYZRGBA()
    mls.setSearchRadius(0.05)
    mls.setPolynomialFit(False)
    mls.setNumberOfThreads(12)
    mls.setInputCloud(point_cloud)
    mls.setSearchMethod(tree)
    mls.setComputeNormals(True)
    output = pcl.PointCloud.PointNormal()
    mls.process(output)