Please enable JavaScript to view this site.

IDS peak 2.8.0 / uEye+ firmware 3.33

Querying and setting the number of frames to be skip (SkipFrames)

Depending on the application, it may make sense not to use every image for the control. This can prevent the algorithm from oscillating.

genericC++

// Get current setting of skipped frames (default = 2)
auto skipFrames = m_autoFeaturesManager.GetSkipFrames();
 
// Set SkipFrames value
m_autoFeaturesManager.SetSkipFrames(skipFrames);

Applying corrections

genericC++

while (m_running)
{
  try
  {
      // Get buffer from device's DataStream. Wait 5000 ms. The buffer is automatically locked until it is queued again.
      const auto buffer = m_dataStream->WaitForFinishedBuffer(5000);
 
      // Create IDS peak IPL image from buffer
      const auto image = peak::ipl::Image(peak::BufferTo<Image>(buffer));
 
      // Queue buffer again
      m_dataStream->QueueBuffer(buffer);
 
      // Apply all previously specified auto features to current image
      m_autoFeaturesManager.ProcessImage(image);
 
      // Create IDS peak IPL image for debayering and convert it to RGBa8 format
      auto imageProcessed = image.ConvertTo(peak::ipl::PixelFormatName::BGRa8, IDS peak IPL::ConversionMode::Fast);
  }
  catch (const std::exception& e)
  {
      // ...
  }
}

© 2024 IDS Imaging Development Systems GmbH