Python
示例列表
示例主要分为两类:相机 和 应用。 相机 类别中的示例侧重于如何使用相机。 应用 类别中的示例则侧重于使用相机生成的输出,例如3D点云、2D图像或来自相机的其它数据。这些示例展示了可以如何使用来自相机的数据。
相机
基础
capture - 通过Zivid相机捕获包含颜色数据的点云。
capture_2d - 通过Zivid相机捕获2D图像。
capture_2d_with_settings_from_yml - 使用YML文件中的设置来通过Zivid相机捕获2D图像。
capture_assistant - 使用捕获助手通过Zivid相机捕获带有颜色数据的点云。
capture_from_file_camera - 使用Zivid文件相机捕获带有颜色信息的点云。
capture_hdr - 通过Zivid相机捕获带有颜色数据的HDR点云。
capture_hdr_complete_settings - 通过Zivid相机使用完整配置设置捕获带有颜色数据的点云。
capture_with_settings_from_yml - 导入YML文件中的设置,从Zivid相机捕获带有颜色数据的点云。
高级
capture_2d_and_3d - Capture 2D and 3D separately with the Zivid camera.
capture_hdr_loop - 使用不同的采集设置覆盖场景中的相同动态范围,以优化图像质量、速度或折衷方案。
capture_hdr_print_normals - 捕获Zivid点云,计算法线并输出一个子集。
info_util_other
camera_user_data - 在Zivid相机上存储用户数据。
capture_with_diagnostics - 从YML文件导入设置并启用诊断功能,从Zivid相机捕获带有颜色数据的点云。
firmware_updater - 更新Zivid相机上的固件。
get_camera_intrinsics - 从Zivid相机读取内参(OpenCV 模型)或者从点云中估计它们。
PrintVersionInfo - 打印Python、zivid-python和Zivid SDK的版本信息,然后列出所有连接的相机并打印其信息。
Warmup - 以指定时间和捕获周期预热相机的示例。
维护
correct_camera_in_field - 校正Zivid相机的尺寸真实度。
reset_camera_in_field - 在相机上重置现场标定结果。
verify_camera_in_field - 检查Zivid相机的尺寸真实度。
应用
基础
可视化
capture_from_file_camera_vis_3d - 使用Zivid文件相机捕获带有颜色信息的点云,并将其可视化。
capture_hdr_vis_normals - 捕获Zivid彩色点云,计算法线,转换为彩色图像并可视化。
capture_vis_3d - 从Zivid相机捕获带有颜色数据的点云,并将其可视化。
read_zdf_vis_3d - 从ZDF文件中读取点云数据并将其可视化。
文件格式
convert_zdf - 将点云数据从ZDF格式转换为您的首选格式(PLY、CSV、TXT、PNG、JPG、BMP、TIFF)。
read_iterate_zdf - 从ZDF文件中读取点云数据,对其进行迭代并提取单个的点。
高级
auto_2d_settings - 使用Zivid标定板自动查找适用于2D捕获的的2D设置。
color_balance - 使用Zivid标定板平衡2D图像的颜色。
create_depth_map - 从ZDF文件中读取点云数据,将其转换为OpenCV格式,提取深度图并将其可视化。
downsample - 将从ZDF文件读取的点云进行降采样。
gamma_correction - 使用gamma校正捕获2D图像。
get_checkerboard_pose_from_zdf - 从ZDF文件读取Zivid标定板的点云数据并估计其位姿。
hand_eye_calibration - 执行手眼标定。
mask_point_cloud - 从ZDF文件中读取点云数据,应用二进制掩码并将其可视化。
project_and_find_marker - Show a marker using the projector, capture a set of 2D images to find the marker coordinates (2D and 3D).
reproject_points - Illuminate checkerboard (Zivid Calibration Board) corners by getting checkerboard pose
roi_box_via_checkerboard - 根据相对于Zivid标定板给出的ROI盒过滤点云。
手眼标定
PoseConversions - 转换为转换矩阵(旋转矩阵 + 平移向量)/由转换矩阵转换而来。
robodk_hand_eye_calibration - 使用Robodk界面生成数据集并执行手眼标定。
utilize_hand_eye_calibration - 使用手眼标定将单个数据点或整个点云从相机坐标系转换到机器人基坐标系。
verify_hand_eye_with_visualization - 通过转换所有数据集点云并可视化来验证手眼标定。
使用UR机器人进行手眼标定
universal_robots_perform_hand_eye_calibration - 使用Universal Robot UR5e机器人生成数据集并执行手眼标定的脚本。
sample_utils
calibration_board_utils - 适用于Zivid标定板的实用功能(Utility functions)。
display - 显示Zivid示例的相关数据。
paths - 获取Zivid示例的相关路径。
robodk_tools - 机器人控制模块
save_load_matrix - 尝试:
white_balance_calibration - 使用白色表面作为参考的2D捕获的平衡颜色方法。
应用
高级
验证手眼标定
robodk_verify_hand_eye_calibration - 使用RoboDK控制机器人执行触碰测试来验证手眼标定的结果。
操作指南
备注
The recommended Python version for these samples is 3.7 - 3.9.
使用IDE或命令行安装runtime requirements:
pip install -r requirements.txt
将目录源添加到PYTHONPATH。导航到存储库的根目录并运行:
PowerShell:
$env:PYTHONPATH=$env:PYTHONPATH + ";$PWD\source"
cmd:
set PYTHONPATH="$PYTHONPATH;$PWD\source"
bash:
export PYTHONPATH="$PYTHONPATH:$PWD/source"
打开并运行其中一个示例。