---
title: カメラシーケンス
slug: api-guide/ja/mguw_0Hl18jdYHXH8M-LM
docTags: 
createdAt: 2024-12-16T14:18:05.702Z
---

:::hint{type="info"}
kognic-io 2.5.0以降、シーンタイプ（`CamerasSequence`）を公開せず、単一のモデルからあらゆるシーンを簡単に作成できる新しいシーンモデルを推奨しています。
:::

`CamerasSeq`は、カメラ画像のシーケンスで構成され、各フレームには異なるセンサーからの1〜20枚の画像を含めることができます。`CamerasSeq`オブジェクトの各フィールドの詳細については、シーンの[概要](docId\:M9gJ_7GE3M0jf7hvLohJ2)の関連セクションをご覧ください。

```python
from __future__ import absolute_import

from typing import Optional
from uuid import uuid4

import kognic.io.model.scene.cameras_sequence as CSM
from kognic.io.client import KognicIOClient
from kognic.io.logger import setup_logging
from kognic.io.model import CreateSceneResponse, Image


def run(client: KognicIOClient, dryrun: bool = True, **kwargs) -> Optional[CreateSceneResponse]:
    print("Creating Cameras Sequence Scene...")

    sensor1 = "RFC01"
    sensor2 = "RFC02"
    metadata = {"location-lat": 27.986065, "location-long": 86.922623, "vehicle_id": "abg"}

    scene = CSM.CamerasSequence(
        external_id=f"camera-seq-images-example-{uuid4()}",
        frames=[
            CSM.Frame(
                frame_id="1",
                relative_timestamp=0,
                images=[
                    # JPG Images in Frame 1
                    Image(
                        filename="./examples/resources/img_RFC01.jpg",
                        sensor_name=sensor1,
                    ),
                    Image(
                        filename="./examples/resources/img_RFC02.jpg",
                        sensor_name=sensor2,
                    ),
                ],
                metadata={"dut_status": "active"},
            ),
            CSM.Frame(
                frame_id="2",
                relative_timestamp=500,
                images=[
                    # PNG Images in Frame 2
                    Image(
                        filename="./examples/resources/img_RFC11.png",
                        sensor_name=sensor1,
                    ),
                    Image(
                        filename="./examples/resources/img_RFC12.png",
                        sensor_name=sensor2,
                    ),
                ],
                metadata={"dut_status": "active"},
            ),
            CSM.Frame(
                frame_id="3",
                relative_timestamp=1000,
                images=[
                    # WebP VP8 Images in Frame 3
                    Image(
                        filename="./examples/resources/img_RFC21.webp",
                        sensor_name=sensor1,
                    ),
                    Image(
                        filename="./examples/resources/img_RFC22.webp",
                        sensor_name=sensor2,
                    ),
                ],
                metadata={"dut_status": "active"},
            ),
            CSM.Frame(
                frame_id="4",
                relative_timestamp=1500,
                images=[
                    # WebP VP8L Images in Frame 4
                    Image(
                        filename="./examples/resources/img_RFC31.webp",
                        sensor_name=sensor1,
                    ),
                    Image(
                        filename="./examples/resources/img_RFC32.webp",
                        sensor_name=sensor2,
                    ),
                ],
                metadata={"dut_status": "active"},
            ),
            CSM.Frame(
                frame_id="5",
                relative_timestamp=2000,
                images=[
                    # WebP VP8X Images in Frame 5
                    Image(
                        filename="./examples/resources/img_RFC41.webp",
                        sensor_name=sensor1,
                    ),
                    Image(
                        filename="./examples/resources/img_RFC42.webp",
                        sensor_name=sensor2,
                    ),
                ],
                metadata={"dut_status": "active"},
            ),
            CSM.Frame(
                frame_id="6",
                relative_timestamp=2500,
                images=[
                    # AVIF Images in Frame 6
                    Image(
                        filename="./examples/resources/img_RFC51.avif",
                        sensor_name=sensor1,
                    ),
                    Image(
                        filename="./examples/resources/img_RFC52.avif",
                        sensor_name=sensor2,
                    ),
                ],
                metadata={"dut_status": "active"},
            ),
        ],
        metadata=metadata,
    )

    # Create scene
    return client.cameras_sequence.create(scene, dryrun=dryrun, **kwargs)


if __name__ == "__main__":
    setup_logging(level="INFO")
    # Project - Available via `client.project.get_projects()`
    project = "<project-identifier>"

    client = KognicIOClient()
    run(client, project=project)
```

:::hint{type="success"}
### dryrunを使用してシーンを検証する

メソッド呼び出しで`dryrun`パラメータをtrueに設定すると、APIを使用してシーンが検証されますが、実際には作成されません。
:::
