annofabapiの3DPC Editor用の拡張機能です。
Project description
annofabapi-3dpc-extensions
annofabapiの3次元アノテーション用の拡張機能です。
Install
- Python 3.8+
Install
$ pip install annofabapi-3dpc-extensions
Usage
cuboidアノテーションやセグメントアノテーションに対応したデータクラスを利用できます。
from annofabapi.parser import SimpleAnnotationDirParser
from annofab_3dpc.annotation import (
CuboidAnnotationDetailDataV2,
EulerAnglesZXY,
SegmentAnnotationDetailData,
SegmentData,
convert_annotation_detail_data,
)
parser = SimpleAnnotationDirParser("tests/data/task1/input1.json")
result = parser.parse(convert_annotation_detail_data)
segment_annotation_data = result.details[0].data
cuboid_annotation_data = result.details[1].data
assert type(segment_annotation_data) == SegmentAnnotationDetailData
assert type(cuboid_annotation_data) == CuboidAnnotationDetailDataV2
### cuboid annotation
print(cuboid_annotation_data)
# => CuboidAnnotationDetailDataV2(shape=CuboidShapeV2(dimensions=Size(width=6.853874863204751, height=0.2929844409227371, depth=4.092537841193188), location=Location(x=-11.896872014598989, y=-3.0571381239812996, z=0.3601047024130821), rotation=EulerAnglesZXY(x=0, y=0, z=0), direction=CuboidDirection(front=Vector3(x=1, y=0, z=0), up=Vector3(x=0, y=0, z=1))), kind='CUBOID', version='2')
# オイラー角をクォータニオンに変換
print(cuboid_annotation_data.shape.rotation.to_quaternion())
# => [1.0, 0.0, 0.0, 0.0]
# クォータニオンからオイラー角に変換
print(EulerAnglesZXY.from([1.0, 0.0, 0.0, 0.0]))
# => EulerAnglesZXY(x=-0.0, y=0.0, z=0.0)
### segment annotation
print(segment_annotation_data)
# => SegmentAnnotationDetailData(data_uri='./input1/7ba51c15-f07a-4e29-8584-a4eaf3a6812a')
# セグメント情報が格納されたファイルを読み込む
with parser.open_outer_file(Path(segment_annotation_data.data_uri).name) as f:
dict_segmenta_data = json.load(f)
segment_data = SegmentData.from_dict(dict_segmenta_data)
assert type(segment_data) == SegmentData
assert len(segment_data.points) > 0
print(segment_data.points)
# => [130439, 130442, ... ]
開発者向けドキュメント
https://github.com/kurusugawa-computer/annofabapi-3dpc-extensions/blob/main/README_for_developer.md 参照
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for annofabapi_3dpc_extensions-0.2.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | a67d445fc141a98a1f136a31054ec900dffb6a95a4773c3b15e0dde804188bc4 |
|
MD5 | 182352e49c5e8aa77a640e3119429394 |
|
BLAKE2b-256 | d8db420929a66b1e5caf951ef59f60c9f71709edb39a06598e2a8c12fbf52d5c |
Close
Hashes for annofabapi_3dpc_extensions-0.2.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5fd889fbe7e569f693beab25896679f8e004cd4d6b929a1c10114a44697c4221 |
|
MD5 | 081c97ce51bb4cab65a7b878ff4e524b |
|
BLAKE2b-256 | f4f2334328734d658cad1220128fdfa045608d3abab538ed200f878fbba2c466 |