간단한 그룹 표시

8552 단어 pptkPointCloudPython
파이thhon 라이브러리pptk - Point Processing Toolkit를 알고 있는데, Qita 글과 다른 일본어 정보가 없는 것 같아 소개 글을 쓴다.

pptk 정보


pptk는 위치 정보를 담당하는 네덜란드 기업HERE Technologies이 개발했다.이 기사는 0.1.1의 버전으로 작성되었으며 MIT 라이센스입니다.
파이톤은 같은 시기에 등장한 점군 처리 라이브러리Open3D가 있는데 그곳의 기능이 더욱 풍부하다.또는 pptk의 기능은 현재 상당히 제한되어 있다. 점군 처리 라이브러리라고는 하지만 문서 페이지처리 항목에는 법선 추정과 k-d tree의 최근 인접 검색만 기재되어 있다.깃허브의 최종 제출도 2018년 10월 5일(2019년 1월 24일까지)까지 이뤄져 활발하지 않은 것으로 보인다.
그러나 기능이 유한하기 때문에 처음으로 점군 처리 프로그램 라이브러리를 사용하는 나에게도 간단하게 사용할 수 있고 편리하기 때문에 간단한 예를 소개한다.복잡한 예는 자습서 페이지를 보십시오.

설치 방법

pip install pptk
들어오다나의 상황은 pptk=0.1.1이다.

주의 사항


Ubuntu 18.04의 경우 다음 질문에 대응해야 합니다.
  • pip install pptk doesn't work on ubuntu 18.04/kubuntu 18.04 · Issue #3 · heremaps/pptk
  • virtualenv(Python 3.6)를 예로 들면 다음과 같은 절차를 수행합니다.
    cd venv/lib/python3.6/site-packages/pptk/libs/
    mv libz.so.1 libz.so.1.old
    ln -s /lib/x86_64-linux-gnu/libz.so.1
    

    점 그룹 표시하기


    뷰어 문서 페이지 필요한 건 대체로 적혀있어요.
    랜덤으로 100개의 점을 생성하고 표시된 코드는 다음과 같다.
    xyz = pptk.rand(100, 3)
    v = pptk.viewer(xyz)
    v.set(point_size=0.005)
    

    점에 랜덤 색상을 더하려면
    rgb = pptk.rand(100, 3)
    v = pptk.viewer(xyz, rgb)
    v.set(point_size=0.005)
    

    색상은 RGB를 0~1의 값으로 나타냅니다.여기xyzrgb는 pptkPoints이지만 파이톤의 목록과 NumPy의aray를 추가할 수 있습니다.
    또한 색상 지정은 여러 색상을 지정할 수 있는 가변 길이 매개변수입니다.
    rgb1 = pptk.rand(100, 3)
    rgb2 = pptk.rand(100, 3)
    v = pptk.viewer(xyz, rgb1, rgb2)
    v.set(point_size=0.005)
    
    키보드를 통해 색상을 전환할 수 있습니다.

    뷰어는 마우스나 키보드로도 조작할 수 있다.핫키는 1, 3, 5, 7, c 등이 있다.자세한 내용은 뷰어의 문서 페이지를 참조하십시오.
    이 외에도 촬영, 녹화 및 애니메이션 디스플레이도 가능하다.

    이미지 표시


    좌표와 색을 지정할 수 있기 때문에 그림을 표시하고 싶습니다.
    import numpy as np
    from PIL import Image
    import pptk
    
    imgs = [Image.open(fname) for fname in ['wanihakase.jpg', 'sugamon.jpg','okazaki.jpg']]
    rows, cols = imgs[0].size
    
    pts = [[r/1.414, c, -r/1.414] for  r in range(rows) for c in range(cols)]
    v = pptk.viewer(pts)
    
    colors = [np.array(img.getdata())/255 for img in imgs]
    v.attributes(*colors)
    

    이 예에서 보듯이 색상 지정은 pptk.viewer()뿐만 아니라 pptk.viewer.attributes()일 수도 있습니다.
    이번에 사용한 코드 이미지도 여기 창고에 함께 놓습니다.

    Reference

  • pptk GiitHub 웨어하우스
  • pptk 문서
  • 좋은 웹페이지 즐겨찾기