Please enable JavaScript to view this site.

IDS peak 2.20.0 / uEye+ firmware 3.80

IDS Peak comfortSDK, genericSDK, AFL, ICL, and IPL developer manuals are external documents.
Please contact us if you need these manuals.

This feature is only supported by specific uEye+ cameras.

U3-33Dx

GV-53Dx

Defines the algorithm used to calculate the automatic correction value for the black level.

Name

BlackLevelAutoCalculationMode[BlackLevelSelector]

Category

AnalogControl

Interface

Enumeration

Access

Read/Write

Unit

-

Visibility

Expert

Values

CurrentFrame

MovingAverage

Standard

IDS

Availability uEye+

icon-gev icon-u3v

Availability uEye

-

Values description

CurrentFrame: The black level correction is calculated solely based on the most recently acquired image. This is the default mode.

MovingAverage: The black level correction is calculated based on the average of a defined number of previously acquired images.

Code example

C++

// Determine the current entry of BlackLevelAutoCalculationMode
std::string value = nodeMapInterface->FindNode<peak::core::nodes::EnumerationNode>("BlackLevelAutoCalculatioMode")->CurrentEntry()->SymbolicValue();
// Get a list of all available entries of BlackLevelAutoCalculationMode
auto allEntries = nodeMapInterface->FindNode<peak::core::nodes::EnumerationNode>("BlackLevelAutoCalculatioMode")->Entries();
std::vector<std::shared_ptr<peak::core::nodes::EnumerationEntryNode>> availableEntries;
for(const auto & entry : allEntries)
{
  if ((entry->AccessStatus()!=peak::core::nodes::NodeAccessStatus::NotAvailable)
           && (entry->AccessStatus()!=peak::core::nodes::NodeAccessStatus::NotImplemented))
   {
       availableEntries.emplace_back(entry);
   }
}
// Set BlackLevelAutoCalculationMode to "CurrentFrame"
nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("BlackLevelAutoCalculatioMode")->SetCurrentEntry("CurrentFrame");

C#

// Determine the current entry of BlackLevelAutoCalculationMode
string value = nodeMapInterface.FindNode<IDSImaging.Peak.API.Core.Nodes.EnumerationNode>("BlackLevelAutoCalculatioMode").CurrentEntry().SymbolicValue();
// Get a list of all available entries of BlackLevelAutoCalculationMode
allEntries = nodeMapInterface.FindNode<IDSImaging.Peak.API.Core.Nodes.EnumerationNode>("BlackLevelAutoCalculatioMode").Entries();
List<string> availableEntries = new List<string>();
for(int i = 0; i < allEntries.Count(); ++i)
{
  if ((allEntries[i].AccessStatus() != IDSImaging.Peak.API.Core.Nodes.NodeAccessStatus.NotAvailable)
           && (allEntries[i].AccessStatus() != IDSImaging.Peak.API.Core.Nodes.NodeAccessStatus.NotImplemented))
   {
       availableEntries.Add(allEntries[i].SymbolicValue());
   }
}
// Set BlackLevelAutoCalculationMode to "CurrentFrame"
nodeMapRemoteDevice.FindNode<IDSImaging.Peak.API.Core.Nodes.EnumerationNode>("BlackLevelAutoCalculatioMmode").SetCurrentEntry("CurrentFrame");

Python

# Determine the current entry of BlackLevelAutoCalculationMode (str)
value = nodeMapInterface.FindNode("BlackLevelAutoCalculatioMode").CurrentEntry().SymbolicValue()
# Get a list of all available entries of BlackLevelAutoCalculationMode
allEntries = nodeMapInterface.FindNode("BlackLevelAutoCalculatioMode").Entries()
availableEntries = []
for entry in allEntries:
   if (entry.AccessStatus() != peak.NodeAccessStatus_NotAvailable
          and entry.AccessStatus() != peak.NodeAccessStatus_NotImplemented):
       availableEntries.append(entry.SymbolicValue())
 
# Set BlackLevelAutoCalculationMode to "CurrentFrame" (str)
nodeMapRemoteDevice.FindNode("BlackLevelAutoCalculatioMode").SetCurrentEntry("CurrentFrame")

© 2026 IDS Imaging Development Systems GmbH