LeRobot 文件

攝像頭

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

攝像頭

LeRobot 為影片捕捉提供了多種選擇,包括手機攝像頭、筆記型電腦內建攝像頭、外接網路攝像頭和英特爾實感(Intel RealSense)攝像頭。要高效地從大多數攝像頭錄製幀,您可以使用 OpenCVCameraRealSenseCamera 類。有關 OpenCVCamera 類的更多相容性詳情,請參閱 OpenCV 影片 I/O 概述

查詢你的攝像頭

要例項化一個攝像頭,你需要一個攝像頭識別符號。這個識別符號可能會在你重啟電腦或重新插拔攝像頭時發生變化,這種行為主要取決於你的作業系統。

要查詢插入到你係統中的攝像頭的索引,請執行以下指令碼:

lerobot-find-cameras opencv # or realsense for Intel Realsense cameras

如果你連線了兩個攝像頭,輸出結果將類似於:

--- Detected Cameras ---
Camera #0:
  Name: OpenCV Camera @ 0
  Type: OpenCV
  Id: 0
  Backend api: AVFOUNDATION
  Default stream profile:
    Format: 16.0
    Width: 1920
    Height: 1080
    Fps: 15.0
--------------------
(more cameras ...)

在 `macOS` 中使用英特爾實感攝像頭時,你可能會遇到這個 錯誤Error finding RealSense cameras: failed to set power state,這可以透過使用 sudo 許可權執行相同的命令來解決。請注意,在 `macOS` 中使用實感攝像頭是不穩定的。

使用攝像頭

下面是兩個示例,演示瞭如何使用該 API。

  • 使用基於 OpenCV 的攝像頭進行非同步幀捕捉
  • 使用英特爾實感攝像頭進行彩色和深度捕捉
Open CV 攝像頭
英特爾實感攝像頭
from lerobot.cameras.opencv.configuration_opencv import OpenCVCameraConfig
from lerobot.cameras.opencv.camera_opencv import OpenCVCamera
from lerobot.cameras.configs import ColorMode, Cv2Rotation

# Construct an `OpenCVCameraConfig` with your desired FPS, resolution, color mode, and rotation.
config = OpenCVCameraConfig(
    index_or_path=0,
    fps=15,
    width=1920,
    height=1080,
    color_mode=ColorMode.RGB,
    rotation=Cv2Rotation.NO_ROTATION
)

# Instantiate and connect an `OpenCVCamera`, performing a warm-up read (default).
camera = OpenCVCamera(config)
camera.connect()

# Read frames asynchronously in a loop via `async_read(timeout_ms)`
try:
    for i in range(10):
        frame = camera.async_read(timeout_ms=200)
        print(f"Async frame {i} shape:", frame.shape)
finally:
    camera.disconnect()

使用你的手機

Mac
Linux

要在 macOS 上使用 iPhone 作為攝像頭,請啟用連續互通相機功能。

  • 確保你的 Mac 執行的是 macOS 13 或更高版本,iPhone 執行的是 iOS 16 或更高版本。
  • 使用相同的 Apple ID 登入兩臺裝置。
  • 使用 USB 資料線連線你的裝置,或開啟 Wi-Fi 和藍牙以進行無線連線。

更多詳情,請訪問 Apple 支援

在下一節中執行攝像頭設定指令碼時,你的 iPhone 應該會被自動檢測到。

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.