laser-vibrations
收藏资源简介:
Laser Vibrations 是一个用于通过激光散斑振动记录定位纸板箱内隐藏物体的多模态数据集。该数据集通过10×10的激光网格照射箱子侧面,当扬声器激发箱子振动时,每个激光点的散斑图案会随局部表面振动产生位移。核心任务是通过振动信号单独重建箱内物体的形状和位置。数据集包含图像数据(带分割掩码的俯视图)、视频数据(激光散斑振动慢动作预览)、音频数据(重建的振动信号和激励信号)和结构化元数据(JSON格式)。关键特征字段包括样本ID、实验ID、物体类型、数量及位置信息、箱体材料、扬声器激活状态、分割掩码中心坐标和各类媒体文件路径。文件结构中,每个样本有独立目录存放原始振动帧、处理后数据及预览文件,共享的激励音频和俯视图图像集中存放。适用任务包括振动信号分析、物体检测与定位以及多模态传感器融合研究。数据集还包含详细的实验配置和处理参数记录(曝光时间、采样率、滤波器设置等),适合计算机视觉、信号处理和物理感知交叉领域的研究。
Laser Vibrations is a multimodal dataset designed for localizing hidden objects within cardboard boxes through laser speckle vibration recordings. The dataset employs a 10×10 laser grid projected onto the boxs side surface, where the speckle pattern of each laser point undergoes displacement due to local surface vibrations when excited by a speaker. The core objective is to reconstruct the shape and position of concealed objects solely from vibration signals. The dataset includes image data (top-view with segmentation masks), video data (slow-motion previews of laser speckle vibrations), audio data (reconstructed vibration signals and excitation signals), and structured metadata (in JSON format). Key feature fields encompass sample ID, experiment ID, object type, quantity and position information, box material, speaker activation status, segmentation mask center coordinates, and paths to various media files. The file structure organizes each sample in a dedicated directory containing raw vibration frames, processed data, and preview files, while shared excitation audio and top-view images are stored centrally. Applicable tasks include vibration signal analysis, object detection and localization, and multimodal sensor fusion research. The dataset also provides detailed experimental configurations and processing parameters (exposure time, sampling rate, filter settings, etc.), making it suitable for interdisciplinary research in computer vision, signal processing, and physical perception.
数据集概述:Laser Vibrations
基本信息
- 数据集名称:Laser Vibrations
- 数据集地址:https://huggingface.co/datasets/eturok-weizmann/laser-vibrations
- 任务目标:通过激光散斑振动记录,定位隐藏在纸板箱内的物体。使用10×10激光网格照射纸箱侧面,当扬声器激励纸箱时,每个激光的散斑图案会随局部表面振动而变化,目标是仅凭振动信号重建箱内物体的形状和位置。
数据集结构
列信息(来自 data/metadata.jsonl)
| 列名 | 类型 | 描述 |
|---|---|---|
sample_id |
int | 样本唯一顺序标识符 |
segmented_overhead_file_name |
image | 带有分割掩码叠加和扬声器角度注释的顶视照片 |
speckle_vibrations_file_name |
video | 纸箱振动时激光散斑图案的慢动作预览视频 |
speckle_shifts_ifft_audio_file_name |
audio | 单个激光点振动信号重建为音频(逆FFT) |
audio_file_name |
audio | 录制时通过扬声器播放的共享激励啁啾声 |
experiment_id |
string | 源目录名称(experiment-15,每次录制唯一) |
speakers |
string | 4位扬声器激活码,例如 0001 表示仅扬声器4激活 |
x_position |
int | 物体网格列索引(0起始) |
y_position |
int | 物体网格行索引(0起始) |
x_com |
float | 裁剪顶视图像中分割掩码的X质心(像素) |
y_com |
float | 裁剪顶视图像中分割掩码的Y质心(像素) |
object |
string | 箱内物体类型,例如 cube |
n_objects |
int | 箱内物体数量 |
box_material |
string | 纸箱材料,例如 cardboard |
mask_file_name |
image | 裁剪顶视图像中物体的二值分割掩码 |
experiment_dir |
string | experiment-16目标目录名称 |
manifest |
string | 该样本的完整JSON清单 |
文件目录结构
experiment-16/ ├── README.md ├── audio/ │ └── chirp_50_1000_3.0sec.wav # 共享激励啁啾声(50–1000 Hz,3秒) ├── data/ │ ├── metadata.jsonl # 每样本一行JSON(面向查看器) │ ├── 0000001/ # 每样本目录(7位零填充ID) │ │ ├── manifest.json # 完整来源与配置 │ │ ├── speckle_vibration_raw.npy # 原始激光相机帧 [100激光 × T帧 × 2 (XY)] │ │ ├── speckle_shifts.npz # 每激光每帧的亚像素XY位移 │ │ ├── speckle_shifts_clean.npz # 带通滤波+Hann窗后的位移 │ │ ├── speckle_shifts_fft.npz # 清洁位移的FFT(频域) │ │ ├── speckle_shifts_ifft_audio.wav# 单个激光振动重建为音频 │ │ └── speckle_vibrations.mp4 # 散斑运动的慢动作预览视频 │ └── 0000002/ │ └── ... └── image/ └── <image_dir>/ ├── raw_overhead.png # 裁剪前完整顶视照片 ├── cropped_overhead.png # 裁剪到纸箱区域的顶视图 ├── segmented_overhead.png # 带有掩码叠加和扬声器注释的顶视图 ├── mask.png # 二值分割掩码(白色=物体) └── mask.npz # 压缩numpy数组形式的二值掩码
manifest.json 结构
每个样本目录包含 manifest.json,记录完整来源、硬件配置、处理参数和产物路径。metadata.jsonl 中的 manifest 列是该文档序列化为JSON字符串。
顶层键
| 键 | 类型 | 描述 |
|---|---|---|
sample_id |
int | 样本唯一标识符 |
experiment_id |
string | 源录制目录名称(来自experiment-15) |
experiment_dir |
string | 目标目录名称(experiment-16) |
source_experiment_id |
string | 规范源引用(同experiment_id) |
source_experiment_dir |
string | 源目录的绝对NAS路径 |
hf_repo |
string | 上传此样本的HuggingFace仓库 |
sample |
object | 录制时的物理设置 |
segmentation |
object | 顶视图像分割结果 |
experiment_config |
object | 合并的硬件和录制配置 |
experiment_output |
object | 处理过程中计算的衍生统计 |
processing_config |
object | 处理流水线参数 |
artifacts |
object | 为此样本生成的所有文件的相对仓库路径 |
sample 键
| 键 | 类型 | 描述 |
|---|---|---|
object |
string | 箱内物体类型 |
n_objects |
int | 物体数量 |
box_material |
string | 纸箱材料 |
speakers |
string | 4位激活码,例如 0001 |
x_position |
int | 物体网格列(0起始) |
y_position |
int | 物体网格行(0起始) |
image_dir |
string | data/image/下的图像子目录名称 |
segmentation 键
| 键 | 类型 | 描述 |
|---|---|---|
x_com |
float | 裁剪顶视图像中掩码的X质心(像素) |
y_com |
float | 裁剪顶视图像中掩码的Y质心(像素) |
status |
string | 分割成功时为 completed |
experiment_output 键(关键输出)
| 键 | 类型 | 描述 |
|---|---|---|
laser_grid.sensor_grid_shape |
list[int] | 激光网格尺寸 [行, 列] |
speckle_vibrations.frame_count |
int | 捕获的总帧数 |
speckle_vibrations.capture_fps_hz |
float | 实际激光相机捕获帧率(Hz) |
speckle_shifts.fs |
float | 位移信号采样率(Hz) |
speckle_shifts.shape |
list[int] | 位移数组形状 [激光数, 帧数, 2] |
speckle_shifts_ifft_audio.sample_rate_hz |
int | 重建音频WAV的采样率(Hz) |
artifacts 键(数据集产物)
| 键 | 类型 | 描述 |
|---|---|---|
raw_overhead |
string | data/image/<dir>/raw_overhead.png |
cropped_overhead |
string | data/image/<dir>/cropped_overhead.png |
segmented_overhead |
string | data/image/<dir>/segmented_overhead.png |
mask_png |
string | data/image/<dir>/mask.png |
mask_npz |
string | data/image/<dir>/mask.npz |
audio |
string | data/audio/chirp_50_1000_3.0sec.wav(所有样本共享) |
speckle_vibration_raw |
string | data/<id>/speckle_vibration_raw.npy |
speckle_vibrations |
string | data/<id>/speckle_vibrations.mp4 |
speckle_shifts |
string | data/<id>/speckle_shifts.npz |
speckle_shifts_clean |
string | data/<id>/speckle_shifts_clean.npz |
speckle_shifts_fft |
string | data/<id>/speckle_shifts_fft.npz |
speckle_shifts_ifft_audio |
string | data/<id>/speckle_shifts_ifft_audio.wav |
manifest |
string | data/<id>/manifest.json |




