跳转到内容

查找表 (LUT)#

相机的 LUT 功能允许您用自己定义的值替换图像中的像素值。

这是通过创建用户定义的查找表 (LUT) 来完成的。

该功能的使用#

运作原理#

LUT 是“查找表”的简称,它基本上是数字的索引列表。对于 Basler 相机,您可以创建用户定义的“亮度查找表”以替换图像中的像素值,即亮度或灰度值。

在查找表中,您可以为单个像素值定义替换值。例如,您可以将灰度值 4 095(= 12 位像素格式的最大灰度值)替换为灰度值 0(= 最小灰度值)。这会将图像中的所有全白像素更改为全黑像素。

Setting up a user-defined LUT can be useful, e.g., if you want to optimize the luminance of your images. By defining the replacement values in advance and storing them in the camera, you avoid time-consuming calculations by your application. Instead, the camera can simply look up the desired new value in the LUT based on the pixel's initial value.

信息

用户定义的 LUT 值范围(0–1 024 或 0–4 096)取决于当前选择的像素格式。它取决于相机的最大像素位深度

如果您的相机支持 12 位像素格式,但当前使用的是 8 位像素格式,您仍然可以输入 0 到 4096 之间的像素值。相机使用这些值进行转换。然后丢弃转换后所得到值的 4 个最低有效位,并发送 8 个最高有效位。

替换单个 LUT 条目#

要替换ace查找表中的单个条目:

  1. Set the LUTIndex parameter to the pixel value that you want to replace with a new value.
  2. Set the LUTValue parameter to the new pixel value.
  3. 对要替换的所有像素值重复步骤 1 和 2。
  4. Set the LUTEnable parameter to true.

Basler 建议使用编程循环(例如 for 循环)来迭代这些值。请参阅下面的示例代码

LUT 条目数#

LUT 中可用条目的数量因相机型号而异。

根据 LUT 条目的数量,并非总是可以存储所有可能像素值的替换值。

具有 512 个条目的 LUT#

大多数 Basler 相机上,用户定义的 LUT 最多可以存储 512 个条目。该大小不足以存储 1,024 或 4,096 个替换值。

因此,存在以下限制:

  • On cameras with a maximum pixel bit depth of 10 bit, you can only set the LUTIndex parameter to multiples of two (0, 2, 4, 6, …, 1022). This means that only pixel values of 0, 2, 4, 6, and so on, can be replaced.
  • On cameras with a maximum pixel bit depth of 12 bit, you can only set the LUTIndex parameter to multiples of eight (0, 8, 16, 24, …, 4088). This means that only pixel values of 0, 8, 16, 24, and so on, can be replaced.

为了确定剩余的像素值,相机会执行直线插值。

示例:假设相机的最大像素位深度为 12 位。还要假设您已创建了一个 LUT,该 LUT 将 24 的灰度值转换为 20,并将 32 的灰度值转换为 30。在这种情况下,相机将按以下方式确定 24 到 32 之间的像素值:

原始像素值 LUT 中存储的值 插值 新像素值(四舍五入)
24 20 20 20
25 - 21.25 21
26 - 22.5 22
27 - 23.75 23
28 - 25 25
29 - 26.25 26
30 - 27.5 27
31 - 28.75 28
32 30 30 30

信息

不会插入高于 4088 的像素值。而是会将 4088 和 4095 之间的所有像素值替换为在 LUT 索引位置 4088 处输入的像素值。

具有 1024 或 4096 个条目的 LUT#

一些 Basler 相机上,用户定义的 LUT 可以存储所有替换值的条目。根据相机的最大像素位深度,可以使用 1,024 或 4,096 个条目。

This means that the limitations described in the section above don't apply: You can set the LUTIndex parameter in increments of 1, and no interpolation is performed.

替换所有 LUT 条目#

您可以通过一次操作替换ace查找表中的所有条目。在很多情况下,这比在 LUT 中反复更改各个条目更快。

要替换ace查找表中的所有条目:

  1. Set the LUTValueAll parameter to the desired value.
    Make sure to apply the correct endianness of the 4-byte words (LUT values).
  2. Set the LUTEnable parameter to true.

信息

The LUTValueAll parameter is only available via the pylon API, not via the pylon Viewer feature tree.

参数结构取决于相机的最大像素位深度

12 位相机型号#

On cameras with a maximum pixel bit depth of 12 bit, the LUTValueAll parameter is an array that consists of 4096 x 4 bytes. Each 4-byte word represents a LUTValue parameter value.

The LUTValue parameter values are sorted by the LUTIndex number in ascending order (0 through 4095).

信息

10 位相机型号#

On cameras with a maximum pixel bit depth of 10 bit, the LUTValueAll parameter is an array that consists of 1024 x 4 bytes. Each 4-byte word represents a LUTValue parameter value.

The LUTValue parameter values are sorted by the LUTIndex number in ascending order (0 through 1023).

信息

附加参数#

The LUTSelector parameter allows you to select a lookup table.

由于 Basler 相机上只有一个用户定义的查找表,因此该参数当前不起作用。

详情#

显示所有相机型号

相机型号 LUT 条目数 4 字节字的字节序(LUT 值)
a2A640-240gmSWIR 4096 大字节序
a2A640-240umSWIR 4096 小字节序
a2A1280-80gmSWIR 4096 大字节序
a2A1280-125umSWIR 4096 小字节序
a2A1920-51gcBAS 4096 大字节序
a2A1920-51gcPRO 4096 大字节序
a2A1920-51gmBAS 4096 大字节序
a2A1920-51gmPRO 4096 大字节序
a2A1920-160ucBAS 4096 小字节序
a2A1920-160ucPRO 4096 小字节序
a2A1920-160umBAS 4096 小字节序
a2A1920-160umPRO 4096 小字节序
a2A1920-165g5cBAS 4096 大字节序
a2A1920-165g5mBAS 4096 大字节序
a2A2048-35gmSWIR 4096 大字节序
a2A2048-110umSWIR 4096 小字节序
a2A2440-98g5cBAS 4096 大字节序
a2A2440-98g5mBAS 4096 大字节序
a2A2448-23gcBAS 4096 大字节序
a2A2448-23gcPRO 4096 大字节序
a2A2448-23gmBAS 4096 大字节序
a2A2448-23gmPRO 4096 大字节序
a2A2448-75ucBAS 4096 小字节序
a2A2448-75ucPRO 4096 小字节序
a2A2448-75umBAS 4096 小字节序
a2A2448-75umPRO 4096 小字节序
a2A2448-105g5cBAS 4096 大字节序
a2A2448-105g5mBAS 4096 大字节序
a2A2448-120cc 4096 小字节序
a2A2448-120cm 4096 小字节序
a2A2448-210cc 4096 小字节序
a2A2448-210cm 4096 小字节序
a2A2560-20gmSWIR 4096 大字节序
a2A2560-70umSWIR 4096 小字节序
a2A2590-22gcBAS 4096 大字节序
a2A2590-22gcPRO 4096 大字节序
a2A2590-22gmBAS 4096 大字节序
a2A2590-22gmPRO 4096 大字节序
a2A2590-60ucBAS 4096 小字节序
a2A2590-60ucPRO 4096 小字节序
a2A2590-60umBAS 4096 小字节序
a2A2590-60umPRO 4096 小字节序
a2A2600-20gcBAS 4096 大字节序
a2A2600-20gcPRO 4096 大字节序
a2A2600-20gmBAS 4096 大字节序
a2A2600-20gmPRO 4096 大字节序
a2A2600-64ucBAS 4096 小字节序
a2A2600-64ucPRO 4096 小字节序
a2A2600-64umBAS 4096 小字节序
a2A2600-64umPRO 4096 小字节序
a2A2840-14gcBAS 4096 大字节序
a2A2840-14gcPRO 4096 大字节序
a2A2840-14gmBAS 4096 大字节序
a2A2840-14gmPRO 4096 大字节序
a2A2840-14gmUV 4096 大字节序
a2A2840-48ucBAS 4096 小字节序
a2A2840-48ucPRO 4096 小字节序
a2A2840-48umBAS 4096 小字节序
a2A2840-48umPRO 4096 小字节序
a2A2840-48umUV 4096 小字节序
a2A2840-67g5cBAS 4096 大字节序
a2A2840-67g5mBAS 4096 大字节序
a2A2840-67g5mUV 4096 大字节序
a2A2840-86cc 4096 小字节序
a2A2840-86cm 4096 小字节序
a2A3840-13gcBAS 4096 大字节序
a2A3840-13gcPRO 4096 大字节序
a2A3840-13gmBAS 4096 大字节序
a2A3840-13gmPRO 4096 大字节序
a2A3840-45ucBAS 4096 小字节序
a2A3840-45ucPRO 4096 小字节序
a2A3840-45umBAS 4096 小字节序
a2A3840-45umPRO 4096 小字节序
a2A4096-9gcBAS 4096 大字节序
a2A4096-9gcPRO 4096 大字节序
a2A4096-9gmBAS 4096 大字节序
a2A4096-9gmPRO 4096 大字节序
a2A4096-30ucBAS 4096 小字节序
a2A4096-30ucPRO 4096 小字节序
a2A4096-30umBAS 4096 小字节序
a2A4096-30umPRO 4096 小字节序
a2A4096-44g5cBAS 4096 大字节序
a2A4096-44g5mBAS 4096 大字节序
a2A4096-67cc 4096 小字节序
a2A4096-67cm 4096 小字节序
a2A4200-12gcBAS 4096 大字节序
a2A4200-12gcPRO 4096 大字节序
a2A4200-12gmBAS 4096 大字节序
a2A4200-12gmPRO 4096 大字节序
a2A4200-40ucBAS 4096 小字节序
a2A4200-40ucPRO 4096 小字节序
a2A4200-40umBAS 4096 小字节序
a2A4200-40umPRO 4096 小字节序
a2A4504-5gcBAS 4096 大字节序
a2A4504-5gcPRO 4096 大字节序
a2A4504-5gmBAS 4096 大字节序
a2A4504-5gmPRO 4096 大字节序
a2A4504-18ucBAS 4096 小字节序
a2A4504-18ucPRO 4096 小字节序
a2A4504-18umBAS 4096 小字节序
a2A4504-18umPRO 4096 小字节序
a2A4504-27g5cBAS 4096 大字节序
a2A4504-27g5mBAS 4096 大字节序
a2A4504-42cc 4096 小字节序
a2A4504-42cm 4096 小字节序
a2A4508-6gcBAS 4096 大字节序
a2A4508-6gcPRO 4096 大字节序
a2A4508-6gmBAS 4096 大字节序
a2A4508-6gmPRO 4096 大字节序
a2A4508-20ucBAS 4096 小字节序
a2A4508-20ucPRO 4096 小字节序
a2A4508-20umBAS 4096 小字节序
a2A4508-20umPRO 4096 小字节序
a2A5320-7gcBAS 4096 大字节序
a2A5320-7gcPRO 4096 大字节序
a2A5320-7gmBAS 4096 大字节序
a2A5320-7gmPRO 4096 大字节序
a2A5320-23ucBAS 4096 小字节序
a2A5320-23ucPRO 4096 小字节序
a2A5320-23umBAS 4096 小字节序
a2A5320-23umPRO 4096 小字节序
a2A5320-34g5cBAS 4096 大字节序
a2A5320-34g5mBAS 4096 大字节序
a2A5320-52cc 4096 小字节序
a2A5320-52cm 4096 小字节序
a2A5328-4gcBAS 4096 大字节序
a2A5328-4gcPRO 4096 大字节序
a2A5328-4gmBAS 4096 大字节序
a2A5328-4gmPRO 4096 大字节序
a2A5328-15ucBAS 4096 小字节序
a2A5328-15ucPRO 4096 小字节序
a2A5328-15umBAS 4096 小字节序
a2A5328-15umPRO 4096 小字节序
a2A5328-22g5cBAS 4096 大字节序
a2A5328-22g5mBAS 4096 大字节序
a2A5328-35cc 4096 小字节序
a2A5328-35cm 4096 小字节序
acA640-121gm 512 大字节序
acA640-300gc 512 大字节序
acA640-300gm 512 大字节序
acA640-750uc 512 小字节序
acA640-750um 512 小字节序
acA720-290gc 512 大字节序
acA720-290gm 512 大字节序
acA720-520uc 512 小字节序
acA720-520um 512 小字节序
acA800-200gc 512 大字节序
acA800-200gm 512 大字节序
acA800-510uc 512 小字节序
acA800-510um 512 小字节序
acA1280-60gc 512 大字节序
acA1280-60gm 512 大字节序
acA1300-60gc 512 大字节序
acA1300-60gm 512 大字节序
acA1300-60gmNIR 512 大字节序
acA1300-75gc 512 大字节序
acA1300-75gm 512 大字节序
acA1300-200uc 512 小字节序
acA1300-200um 512 小字节序
acA1440-73gc 512 大字节序
acA1440-73gm 512 大字节序
acA1440-220uc 512 小字节序
acA1440-220um 512 小字节序
acA1600-20gc 512 大字节序
acA1600-20uc 512 小字节序
acA1600-60gc 512 大字节序
acA1600-60gm 512 大字节序
acA1920-25gc 512 大字节序
acA1920-25gm 512 大字节序
acA1920-25uc 512 小字节序
acA1920-25um 512 小字节序
acA1920-40gc 512 大字节序
acA1920-40gm 512 大字节序
acA1920-40uc 512 小字节序
acA1920-40ucMED 4096 小字节序
acA1920-40um 512 小字节序
acA1920-40umMED 4096 小字节序
acA1920-48gc 512 大字节序
acA1920-48gm 512 大字节序
acA1920-50gc 512 大字节序
acA1920-50gm 512 大字节序
acA1920-150uc 512 小字节序
acA1920-150um 512 小字节序
acA1920-155uc 512 小字节序
acA1920-155ucMED 4096 小字节序
acA1920-155um 512 小字节序
acA1920-155umMED 4096 小字节序
acA2000-50gc 512 大字节序
acA2000-50gm 512 大字节序
acA2000-165uc 512 小字节序
acA2000-165um 512 小字节序
acA2040-25gc 512 大字节序
acA2040-25gm 512 大字节序
acA2040-25gmNIR 512 大字节序
acA2040-35gc 512 大字节序
acA2040-35gm 512 大字节序
acA2040-55uc 512 小字节序
acA2040-55um 512 小字节序
acA2040-90uc 512 小字节序
acA2040-90um 512 小字节序
acA2040-90umNIR 512 小字节序
acA2040-120uc 512 小字节序
acA2040-120um 512 小字节序
acA2440-20gc 512 大字节序
acA2440-20gm 512 大字节序
acA2440-35uc 512 小字节序
acA2440-35ucMED 4096 小字节序
acA2440-35um 512 小字节序
acA2440-35umMED 4096 小字节序
acA2440-75uc 512 小字节序
acA2440-75ucMED 4096 小字节序
acA2440-75um 512 小字节序
acA2440-75umMED 4096 小字节序
acA2500-14gc 512 大字节序
acA2500-14gm 512 大字节序
acA2500-14uc 512 小字节序
acA2500-14um 512 小字节序
acA2500-20gc 512 大字节序
acA2500-20gcMED 512 大字节序
acA2500-20gm 512 大字节序
acA2500-20gmMED 512 大字节序
acA2500-60uc 512 小字节序
acA2500-60um 512 小字节序
acA3088-16gc 512 大字节序
acA3088-16gm 512 大字节序
acA3088-57uc 512 小字节序
acA3088-57ucMED 4096 小字节序
acA3088-57um 512 小字节序
acA3088-57umMED 4096 小字节序
acA3800-10gc 512 大字节序
acA3800-10gm 512 大字节序
acA3800-14uc 512 小字节序
acA3800-14um 512 小字节序
acA4024-8gc 512 大字节序
acA4024-8gm 512 大字节序
acA4024-29uc 512 小字节序
acA4024-29um 512 小字节序
acA4096-11gc 512 大字节序
acA4096-11gm 512 大字节序
acA4096-30uc 512 小字节序
acA4096-30ucMED 4096 小字节序
acA4096-30um 512 小字节序
acA4096-30umMED 4096 小字节序
acA4096-40uc 512 小字节序
acA4096-40ucMED 4096 小字节序
acA4096-40um 512 小字节序
acA4096-40umMED 4096 小字节序
acA4112-8gc 512 大字节序
acA4112-8gm 512 大字节序
acA4112-20uc 512 小字节序
acA4112-20ucMED 4096 小字节序
acA4112-20um 512 小字节序
acA4112-20umMED 4096 小字节序
acA4112-30uc 512 小字节序
acA4112-30ucMED 4096 小字节序
acA4112-30um 512 小字节序
acA4112-30umMED 4096 小字节序
acA5472-5gc 512 大字节序
acA5472-5gm 512 大字节序
acA5472-17uc 512 小字节序
acA5472-17ucMED 4096 小字节序
acA5472-17um 512 小字节序
acA5472-17umMED 4096 小字节序
boA1936-400cc 4096 小字节序
boA1936-400cm 4096 小字节序
boA2448-250cc 4096 小字节序
bo2448-250cm 4096 小字节序
boA2832-190cc 4096 小字节序
bo2832-190cm 4096 小字节序
boA4096-93cc 4096 小字节序
boA4096-93cm 4096 小字节序
boA4096-180cc 4096 小字节序
bo4096-180cm 4096 小字节序
boA4112-68cc 4096 小字节序
boA4112-68cm 4096 小字节序
boA4500-45cc 4096 小字节序
boA4500-45cm 4096 小字节序
boA4504-100cc 4096 小字节序
boA4504-100cm 4096 小字节序
boA5120-150cc 不支持 LUT 功能 不适用
boA5120-150cm 不支持 LUT 功能 不适用
boA5120-230cc 不支持 LUT 功能 不适用
boA5120-230cm 不支持 LUT 功能 不适用
boA5320-150cc 4096 小字节序
boA5320-150cm 4096 小字节序
boA5328-100cc 4096 小字节序
boA5328-100cm 4096 小字节序
boA6500-36cc 4096 小字节序
boA6500-36cm 4096 小字节序
boA8100-16cc 4096 小字节序
boA8100-16cm 4096 小字节序
boA9344-30cc 不支持 LUT 功能 不适用
boA9344-30cm 不支持 LUT 功能 不适用
boA9344-70cc 不支持 LUT 功能 不适用
boA9344-70cm 不支持 LUT 功能 不适用
boA13440-17cm 不支持 LUT 功能 不支持 LUT 功能
daA720-520uc 不支持 LUT 功能 不支持 LUT 功能
daA720-520um 不支持 LUT 功能 不支持 LUT 功能
daA1280-54uc 不支持 LUT 功能 不支持 LUT 功能
daA1280-54um 不支持 LUT 功能 不支持 LUT 功能
daA1440-220uc 不支持 LUT 功能 不支持 LUT 功能
daA1440-220um 不支持 LUT 功能 不支持 LUT 功能
daA1600-60uc 不支持 LUT 功能 不支持 LUT 功能
daA1600-60um 不支持 LUT 功能 不支持 LUT 功能
daA1920-15um 不支持 LUT 功能 不支持 LUT 功能
daA1920-30uc 不支持 LUT 功能 不支持 LUT 功能
daA1920-30um 不支持 LUT 功能 不支持 LUT 功能
daA1920-160uc 不支持 LUT 功能 不支持 LUT 功能
daA1920-160um 不支持 LUT 功能 不支持 LUT 功能
daA2448-70uc 不支持 LUT 功能 不支持 LUT 功能
daA2448-70um 不支持 LUT 功能 不支持 LUT 功能
daA2500-14uc 不支持 LUT 功能 不支持 LUT 功能
daA2500-14um 不支持 LUT 功能 不支持 LUT 功能
daA3840-45uc 不支持 LUT 功能 不支持 LUT 功能
daA3840-45um 不支持 LUT 功能 不支持 LUT 功能
dmA720-290gc 4096 大字节序
dmA720-290gm 4096 大字节序
dmA1440-73gc 4096 大字节序
dmA1440-73gm 4096 大字节序
dmA1920-51gc 4096 大字节序
dmA1920-51gm 4096 大字节序
puA1280-54uc 不支持 LUT 功能 不支持 LUT 功能
puA1280-54um 不支持 LUT 功能 不支持 LUT 功能
puA1600-60uc 不支持 LUT 功能 不支持 LUT 功能
puA1600-60um 不支持 LUT 功能 不支持 LUT 功能
puA1920-30uc 不支持 LUT 功能 不支持 LUT 功能
puA1920-30um 不支持 LUT 功能 不支持 LUT 功能
puA2500-14uc 不支持 LUT 功能 不支持 LUT 功能
puA2500-14um 不支持 LUT 功能 不支持 LUT 功能
r2L8192-200cm 4096 大字节序
r2L16384-120cm 4096 大字节序

示例代码#

// ** Replacing individual LUT entries **
// The following lookup table causes an inversion of the pixel values
// (bright -> dark, dark -> bright)
// Only applies to cameras with a maximum pixel bit depth of 12 bit
for (int i=0; i<4096; i+=8)
{
    camera.LUTIndex.SetValue(i);
    camera.LUTValue.SetValue(4095-i);
}
// Enable the LUT
camera.LUTEnable.SetValue(true);

// ** Replacing all LUT entries in a single operation **
// The following lookup table inverts the pixel values
// (bright -> dark, dark -> bright)
// Only applies to cameras with a maximum pixel bit depth of 12 bit
// Note: This is a simplified code sample.
// You should always check the camera interface and
// the endianness of your system before using LUTValueAll.
// For more information, see the 'LUTValueAll' code sample
// in the pylon API Documentation.
uint32_t lutValues[4096];
for (int i=0; i<4096; i+=8)
{
   lutValues[i] = 4095-i;
}
camera.LUTValueAll.SetValue(lutValues);
// Enable the LUT
camera.LUTEnable.SetValue(true);

此示例代码仅适用于 C++ 语言。

您也可以使用 pylon Viewer 轻松设置参数。