KSJAPI SDK · 视场与 ROI

版本 1.0 · 更新于 2026-10-21 · 阅读 0

采集/预览视场设置与读取、抽点模式、图像尺寸、常用 ROI 列表、多帧拼图。

本组接口来自 KSJApiBase.h、KSJApiMultiFrames.h、KSJApiRoiSizeList.h、KSJApiCustom.h。

视场(FOV)由「起始位置 + 行列像素数 + 行列抽点模式」共同决定。设置后必须回读实际生效值:
若设置的参数不符合相机硬件约束(如 Start 需为 2 的倍数、Size 需为 4 的倍数),函数内部会自动取最接近的参数并返回成功。

函数一览

函数 说明
KSJ_CaptureGetDefaultFieldOfView 获取相机默认采集视场(即支持的最大视场)。
KSJ_CaptureSetFieldOfView 设置采集视场大小(起始位置、行列像素数、行列抽点模式)。
KSJ_CaptureGetFieldOfView 获取采集视场的实际大小。
KSJ_CaptureGetSize 获取采集图像的宽度和高度(像素)。
KSJ_CaptureGetSizeEx 获取采集图像宽高(像素)及位图深度(8 / 24 / 32)。
KSJ_CaptureGetSizeExEx 获取采集图像宽高、位图深度及每个采样的比特位数(nBitsPerSample = 8 或 16)。
KSJ_PreviewGetDefaultFieldOfView 获取相机默认预览视场。
KSJ_PreviewSetFieldOfView 设置预览视场大小。
KSJ_PreviewGetFieldOfView 获取预览视场的实际大小。
KSJ_PreviewGetSize 获取预览图像的宽高(像素)。
KSJ_PreviewGetSizeEx 获取预览图像宽高及位图深度(8 / 24 / 32)。
KSJ_CheckFieldOfView 检测输入的视场参数与相机是否匹配。
KSJ_GetRoiSizeItems 获取指定型号相机的常用 ROI 列表。
KSJ_CaptureSetFieldOfViewEx 设置多帧拼接时的采集视场(多帧常用于线阵相机:自动拼接 N 行成一幅面阵图)。
KSJ_CaptureGetFieldOfViewEx 获取采集的多帧拼接信息。
KSJ_PreviewSetFieldOfViewEx 设置多帧拼接时的预览视场。
KSJ_PreviewGetFieldOfViewEx 获取预览的多帧拼接信息。

关键函数详解

KSJ_CaptureSetFieldOfView

int __stdcall KSJ_CaptureSetFieldOfView(int nIndex, int nColStart, int nRowStart, int nColSize, int nRowSize, KSJ_ADDRESSMODE AmCol, KSJ_ADDRESSMODE AmRow);

设置采集视场大小(起始位置、行列像素数、行列抽点模式)。

返回:成功返回 RET_SUCCESS(1)

说明

  • 参数不符合相机 FOV 要求时,内部会自动使用最接近的参数并返回成功,因此设置后须重新获取实际生效参数。

KSJ_CaptureGetSizeEx

int __stdcall KSJ_CaptureGetSizeEx(int nIndex, int* pnWidth, int* pnHeight, int* pnBitCount);

获取采集图像宽高(像素)及位图深度(8 / 24 / 32)。

返回:成功返回 RET_SUCCESS(1)

说明

  • 实际宽度与视场行大小、抽点模式有关;高度与视场列大小、抽点模式、多帧采集数有关。
  • 位图深度与相机类型及 Bayer 模式有关。

KSJ_GetRoiSizeItems

int __stdcall KSJ_GetRoiSizeItems(KSJ_DEVICETYPE usDeviceType, MVD_ROI_SIZE_LIST* pRoiSizeList);

获取指定型号相机的常用 ROI 列表。

返回:成功返回 RET_SUCCESS(1)

说明

  • 可在任意时刻调用(无需已初始化相机);结果结构见「数据结构与枚举」章节的 MVD_ROI_SIZE_LIST。

KSJ_CaptureSetFieldOfViewEx

int __stdcall KSJ_CaptureSetFieldOfViewEx(int nIndex, int nColStart, int nRowStart, int nColSize, int nRowSize, KSJ_ADDRESSMODE AmCol, KSJ_ADDRESSMODE AmRow, unsigned short wMultiFrameNum);

设置多帧拼接时的采集视场(多帧常用于线阵相机:自动拼接 N 行成一幅面阵图)。

返回:成功返回 RET_SUCCESS(1)

说明

  • 内触发/软触发下采集一次即返回 N 帧拼成的拼帧;外触发/固定帧率下需 N 个触发信号才返回一个拼帧。
  • 拼接帧数设得过大可能超出帧缓存,函数会自动取最接近值,设置后须回读实际生效值。