Please enable JavaScript to view this site.

IDS peak 2.17.1 / uEye+ firmware 3.70

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

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<peak.core.nodes.EnumerationNode>("BlackLevelAutoCalculatioMode").CurrentEntry().SymbolicValue();
// Get a list of all available entries of BlackLevelAutoCalculationMode
allEntries = nodeMapInterface.FindNode<peak.core.nodes.EnumerationNode>("BlackLevelAutoCalculatioMode").Entries();
List<string> availableEntries = new List<string>();
for(int i = 0; i < allEntries.Count(); ++i)
{
  if ((allEntries[i].AccessStatus() != peak.core.nodes.NodeAccessStatus.NotAvailable)
           && (allEntries[i].AccessStatus() != peak.core.nodes.NodeAccessStatus.NotImplemented))
   {
       availableEntries.Add(allEntries[i].SymbolicValue());
   }
}
// Set BlackLevelAutoCalculationMode to "CurrentFrame"
nodeMapRemoteDevice.FindNode<peak.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")

© 2025 IDS Imaging Development Systems GmbH