카메라
2 분
kognic-io 2.5.0부터는 씬 타입(Cameras)을 노출하지 않고 단일 모델로 모든 씬 생성을 단순화한 새로운 씬 모델 사용을 권장하고 있습니다. 가능하다면 이를 채택하는 것을 권장하지만, 이 모델은 단일 프레임 시퀀스를 생성하므로 Cameras 씬을 요구하는 기존 Request와 호환되지 않을 수 있다는 점에 유의하세요.
Cameras는 카메라 이미지의 단일 프레임으로 구성되며, 해당 프레임은 서로 다른 센서로부터 1-12개의 이미지를 포함할 수 있습니다. Cameras 객체의 각 필드가 무엇에 해당하는지에 대한 자세한 내용은 씬 개요 관련 섹션을 확인하세요.
from __future__ import absolute_import
from pathlib import Path
from typing import Optional
from uuid import uuid4
import kognic.io.model.scene.cameras as CM
from kognic.io.client import KognicIOClient
from kognic.io.logger import setup_logging
from kognic.io.model import CreateSceneResponse, Image
base_dir = Path(__file__).parent.absolute()
def run(client: KognicIOClient, dryrun: bool = True, **kwargs) -> Optional[CreateSceneResponse]:
print("Creating Cameras Scene...")
metadata = {"location-lat": 27.986065, "location-long": 86.922623, "vehicle_id": "abg"}
scene = CM.Cameras(
external_id=f"cameras-example-{uuid4()}",
frame=CM.Frame(
images=[
Image(
filename=str(base_dir) + "/resources/img_RFC01.jpg",
sensor_name="RFC01",
),
Image(
filename=str(base_dir) + "/resources/img_RFC02.jpg",
sensor_name="RFC02",
),
]
),
metadata=metadata,
)
# Create scene
return client.cameras.create(scene, dryrun=dryrun, **kwargs)
if __name__ == "__main__":
setup_logging(level="INFO")
client = KognicIOClient()
# Project - Available via `client.project.get_projects()`
project = "Project-identifier"
run(client, project=project)dryrun으로 씬 검증하기
메서드 호출 시 dryrun 매개변수를 true로 설정하면, API를 사용해 씬을 검증만 하고 실제로 생성하지는 않습니다.