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, ... ]
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.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6fc27facba701a63ece103650ca3405c672b59f24d78041ba50e06702f6113b0 |
|
MD5 | 663d9911517f99add5aae36f852b340d |
|
BLAKE2b-256 | 76e25df3c6ccd1497b0fd29c2f1d8377c5cfd4d73b769a5e40ecac41e2ff111c |
Close
Hashes for annofabapi_3dpc_extensions-0.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 363173fa14fd4349c290d490635fa3ad891a94918acb5e7d8d848c36eaed86ed |
|
MD5 | 3a870b3b1a5b47e784e6b6d8c118edc2 |
|
BLAKE2b-256 | e7c3235dc8a75089caf944c4ef0e148fd30b124fb8b9bfae4d284bb6c8bd2ccb |