2D Image Capture Process
The 2D capture API returns after the 2D image is available in CPU memory. All the acquisition, processing, and copying happen inside this function call.
Tip
Use recommended hardware to minimize 2D capture time.
const auto frame2D = camera.capture(settings2D);
using(var frame2D = camera.Capture(settings2D))
with camera.capture(settings_2d) as frame_2d:
The method to get the image from the Frame2D object returns the image right away. The image object holds a handle to the image data in CPU memory.
const auto image = frame2D.imageRGBA();
var image = frame2D.ImageRGBA();
image = frame_2d.image_rgba()
Note
In C++, class Zivid::Image
inherits from Zivid::Array2D
and provides, in addition, a method to save the image in PNG file format.
When the image is available on the CPU memory, we can utilize it in our machine vision application or save it to disk.
const auto imageFile = "Image.png";
std::cout << "Saving 2D color image to file: " << imageFile << std::endl;
image.save(imageFile);
var imageFile = "Image.png";
Console.WriteLine("Saving 2D color image to file: {0}", imageFile);
image.Save(imageFile);
image_file = "Image.png"
print(f"Saving 2D color image to file: {image_file}")
image.save(image_file)
Caution
Zivid One+ camera has a time penalty when changing the capture mode (2D and 3D) if the 2D capture settings use brightness > 0. You can read more about it in 2D and 3D switching limitation.