Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.neuronav.io/llms.txt

Use this file to discover all available pages before exploring further.

The SDK supports popular depth cameras out of the box, with automatic driver management and topic remapping.

Sensor Comparison

FeatureRealSense D435iRealSense D455RealSense D415OAK-D ProOAK-D Pro W
Price~$350~$450~$300~$400~$500
Range0.2-10m0.4-20m0.3-10m0.2-15m0.2-20m
FOV87°×58°87°×58°69°×42°80°×55°150°×100°
IMUYesYesNoYesYes
Best ForIndoor robotsOutdoor/long rangePrecision scanningAI applicationsOutdoor AI
Global ShutterNoYesNoNoNo

Intel RealSense

The most popular choice for SLAM applications. Three models supported:

D435i - Balanced Performance

Best for general indoor robotics.
from neuronav import RealSenseSensor, SensorConfig

# Basic usage - auto-detects camera
sensor = RealSenseSensor()

# Optimized for navigation
config = SensorConfig(
    rgb_width=848,      # D435's optimal width
    rgb_height=480,
    fps=30,
    enable_imu=True,    # Use built-in IMU
    custom_params={
        "laser_power": "150",  # Balance range/power
        "temporal_filter": "true"
    }
)
sensor = RealSenseSensor(config)

# Multiple cameras
sensor1 = RealSenseSensor(SensorConfig(device_id="123456"))
sensor2 = RealSenseSensor(SensorConfig(device_id="789012"))

D455 - Extended Range

Best for outdoor and large spaces.
# Outdoor configuration
outdoor_config = SensorConfig(
    rgb_width=1280,
    rgb_height=720,
    fps=30,
    custom_params={
        "laser_power": "360",  # Maximum for sunlight
        "exposure": "auto"
    }
)

D415 - High Accuracy

Best for 3D scanning and close-range work.
# Precision scanning
scan_config = SensorConfig(
    rgb_width=1920,
    rgb_height=1080,
    fps=15,  # Lower FPS for quality
    custom_params={
        "depth_confidence": "1"  # Higher accuracy
    }
)

OAK-D Pro

Luxonis OAK-D Pro and Pro W with on-device AI.
from neuronav import OAKDSensor, SensorConfig

# Basic usage
sensor = OAKDSensor()

# With configuration
config = SensorConfig(
    rgb_width=1280,
    rgb_height=720,
    fps=30
)
sensor = OAKDSensor(config)

Configuration Options

@dataclass
class SensorConfig:
    device_id: Optional[str] = None     # Camera serial number
    rgb_width: int = 640                # RGB resolution
    rgb_height: int = 480
    depth_width: int = 640              # Depth resolution
    depth_height: int = 480
    fps: int = 30                       # Frame rate
    enable_imu: bool = True              # Use IMU if available
    enable_ir: bool = False              # IR projector
    custom_params: Dict = None          # Sensor-specific params

Common Settings

Fast Navigation

config = SensorConfig(rgb_width=640, rgb_height=480, fps=60)

High Quality

config = SensorConfig(rgb_width=1920, rgb_height=1080, fps=30)

Low Power

config = SensorConfig(rgb_width=640, rgb_height=480, fps=15)