1、DeviceRemovalHandling
CTlFactory类用于创建通用传输
CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。
CHeartbeatHelper类用于将心跳超时设置为适当的值。
CSampleConfigurationEventHandler用于处理设备删除事件。
2、Grab
CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。
CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
DisplayImage类用于显示抓取的图像。
3、Grab_CameraEvents_Universal
CBaslerUniversalInstantCamera类用于创建一个相机对象,其中第一个发现的相机设备独立于其接口。
CSoftwareTriggerConfiguration类用于注册用于启用软件触发的标准配置事件处理程序。软件触发配置处理程序替换默认配置处理程序。
CSampleCameraEventHandler类演示了相机事件的示例处理程序的使用。
CSampleImageEventHandler类演示了图像事件处理程序的用法。
CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
4、Grab_ChunkImage_Universal
CBaslerUniversalInstantCamera类用于创建一个相机对象,其中第一个发现的相机设备独立于其接口。
CBaslerUniversalGrabResultPtr类用于初始化一个智能指针,该指针将独立于摄像机接口接收抓取结果和数据块。
CSampleImageEventHandler类演示了图像事件处理程序的用法。
DisplayImage类用于显示抓取的图像。
5、Grab_MultiCast_Universal
CDeviceInfo类用于查找具有特定接口的摄像机,即, GigE
Vision only (BaslerGigEDeviceClass)。
CBaslerUniversalInstantCamera类用于为找到的第一个GigE相机查找和创建相机对象。
CConfigurationEventPrinter和CImageEventPrinter类用于信息目的,用于打印被调用事件和图像抓取的详细信息。
CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
6、Grab_MultipleCameras
CInstantCameraArray类演示如何为找到的设备创建即时相机数组。startgrab()从索引0,1开始,依次抓取所有相机。
CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
DisplayImage类用于在每个相机的单独窗口中显示每个相机获取的图像。
7、Grab_Strategies
CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。
CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
CSoftwareTriggerConfiguration类用于注册用于启用软件触发的标准配置事件处理程序。软件触发器配置处理程序替换默认配置。
startgrabbing()用于演示不同抓取策略的使用。
8、Grab_UsingActionCommand_Universal
为了更容易地配置多个相机,本示例使用CBaslerUniversalInstantCameraArray类。IGigETransportLayer接口用于发出操作命令。
CActionTriggerConfiguration类用于设置基本的操作命令特性。
CBaslerUniversalGrabResultPtr类用于声明和初始化一个智能指针来接收抓取结果数据。当创建数组中的摄像机时,将摄像机上下文值分配给数组中摄像机的索引号。相机上下文是一个用户可设置的值,它附加到每个抓取结果,可以用来确定产生抓取结果的相机,即,ptrGrabResult - > GetCameraContext ()。
DisplayImage类用于显示抓取的图像。
9、Grab_UsingBufferFactory
MyBufferFactory类演示了用户提供的缓冲区工厂的用法。必须首先创建缓冲区工厂,因为堆栈上的对象是按创建的相反顺序销毁的。缓冲工厂的存在时间必须比本示例中的即时相机对象长。
CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。
SetBufferFactory()提供自己的缓冲区工厂实现。因为我们控制了工厂对象的生存期,
所以我们传递了Cleanup_None参数。
10、Grab_UsingExposureEndEvent_Universal
MyEvents枚举用于区分不同的事件,例如ExposureEndEvent、FrameStartOvertrigger、EventOverrunEvent、ImageReceivedEvent、MoveEvent、NoEvent。
CEventHandler类用于注册图像和相机事件处理程序。注意:GigE
camera事件需要额外的处理,因为事件网络包可能在网络上丢失、加倍或延迟。
CBaslerUniversalInstantCamera类用于创建一个相机对象,其中第一个发现的相机设备独立于其接口。
CConfigurationEventPrinter类用于打印关于相机使用的详细信息。
CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效
11、Grab_UsingGrabLoopThread
CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。
CSoftwareTriggerConfiguration类用于注册用于启用软件触发的标准配置事件处理程序。软件触发器配置处理程序替换默认配置。
CConfigurationEventPrinter类用于打印关于相机使用的详细信息。CImageEventPrinter类充当图像处理任务的占位符。当使用由Instant
Camera对象提供的抓取循环线程时,必须创建并注册一个处理抓取结果的图像事件处理程序。
CanWaitForFrameTriggerReady()用于查询相机设备是否准备好接受下一个帧触发器。startgrab()通过将grabLoopType参数设置为GrabLoop_ProvidedByInstantCamera,演示了如何使用grab循环线程开始抓取。抓取结果被交付给图像事件处理程序。在本例中使用了GrabStrategy_OneByOne缺省抓取策略。
WaitForFrameTriggerReady()用于等待高达500 ms的时间,以便相机准备好触发。
DisplayImage类用于显示抓取的图像。
12、Grab_UsingSequencer_Universal
CBaslerUniversalInstantCamera类用于创建一个相机对象,其中第一个发现的相机设备独立于其接口。
CSoftwareTriggerConfiguration类用于注册用于启用软件触发的标准配置事件处理程序。软件触发器配置处理程序替换默认配置。
CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
DisplayImage类用于显示抓取的图像。
13、GUI_ImageWindow
CPylonImageWindow类用于创建用于显示摄像机图像数据的图像窗口数组。
CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象
startgrab()演示了如何通过应用GrabStrategy_LatestImageOnly grab策略来启动抓取。当必须显示图像时,建议使用此策略。
CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
CPylonImage类用于将抓取的图像分割成块,这些块将依次显示在不同的图像窗口中。
14、GUI_Sample
当单击Refresh按钮时,CGuiSampleDoc::OnViewRefresh()被调用,该函数反过来调用CGuiSampleApp::EnumerateDevices()来枚举所有附加的设备。
通过在设备列表中选择相机,CGuiSampleApp::OnOpenCamera()被调用来打开所选择的相机。
单镜头(抓拍)和开始(抓拍连续)按钮以及曝光、增益、测试图像和像素格式参数都已初始化并启用。通过单击单镜头按钮,CGuiSampleDoc::OnGrabOne()被调用。
要获取单个图像,使用以下参数调用startgrab
(): m_camera。StartGrabbing(pylon::GrabStrategy_OneByOne,pylon::GrabLoop_ProvidedByInstantCamera);当接收到图像时,pylon将调用CGuiSampleDoc:: onimagegrab()处理程序。
为了显示图像,调用CGuiSampleDoc::OnNewGrabresult()。通过单击Start按钮,CGuiSampleDoc:: onstartgrab()被调用。要连续获取图像,使用以下参数调用startgrab (): m_camera。
StartGrabbing(pylon::GrabStrategy_OneByOne::GrabLoop_ProvidedByInstantCamera);在本例中,相机将抓取图像,直到调用stopgrab()。
当接收到一个新图像时,pylon将调用CGuiSampleDoc:: onimagegrab()处理程序。为了显示图像,调用CGuiSampleDoc::OnNewGrabresult()。只有在单击了Start按钮之后,才能启用Stop按钮。要停止连续图像采集,必须单击stop按钮。单击Stop按钮后,将调用CGuiSampleDoc::OnStopGrab()。
单击Save按钮时,将调用CGuiSampleDoc::OnFileImageSaveAs(),并保存位图(BMP)图像(BMP是默认的文件格式)。或者,图像可以保存为TIFF、PNG、JPEG或原始文件格式。
15、ParametrizeCamera_AutoFunctions_Universal
CBaslerUniversalInstantCamera类用于创建一个相机对象,其中第一个发现的相机设备独立于其接口。
CAcquireSingleFrameConfiguration类用于注册配置单帧获取的标准事件处理程序。通过将注册模式设置为RegistrationMode_ReplaceAll,可以删除所有事件处理程序,从而覆盖默认配置。注意,相机设备的自动功能不需要单帧采集抓取。所有可用的采集模式都可以使用。
AutoGainOnce()和AutoGainContinuous()函数通过使用增益Auto函数的Once和Continuous模式来控制亮度。
AutoExposureOnce()和AutoExposureContinuous()函数通过使用曝光Auto函数的Once和Continuous模式来控制亮度。
CBaslerUniversalGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。
DisplayImage类用于显示抓取的图像。
16、ParametrizeCamera_Configurations
CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。
CImageEventPrinter类用于输出捕获图像的详细信息。
CGrabResultPtr类用于初始化接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
CAcquireContinuousConfiguration类是Instant Camera类的默认配置。当创建一个即时相机对象时,它会自动注册。这个即时相机配置是作为头文件提供的。可以复制和修改代码来创建您自己的配置类。
在这个示例中,注册了标准配置事件处理程序,用于配置相机以进行连续获取。通过将注册模式设置为RegistrationMode_ReplaceAll,新的配置处理程序将替换在创建Instant
Camera对象时自动注册的默认配置处理程序。如果指定Cleanup_Delete,则在注销注册时或在清除注册表时自动删除处理程序。
CSoftwareTriggerConfiguration类用于注册用于启用软件触发的标准配置事件处理程序。这个即时相机配置作为headeronly文件提供。可以复制和修改代码来创建您自己的配置类,例如,启用硬件触发。软件触发器配置处理程序替换默认配置。
CAcquireSingleFrameConfiguration类用于注册配置单帧获取的标准事件处理程序。通过将注册模式设置为RegistrationMode_ReplaceAll,可以删除所有事件处理程序,从而覆盖默认配置。
CPixelFormatAndAoiConfiguration类用于注册一个额外的配置处理程序来设置图像格式并调整图像ROI。这个即时相机配置是作为头文件提供的。可以复制和修改代码来创建您自己的配置类。
通过将注册模式设置为RegistrationMode_Append,将添加配置处理程序,而不是替换已经注册的配置处理程序。
17、ParametrizeCamera_GenericParameterAccess
CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。
INodeMap接口用于访问相机设备的特征节点映射。它提供了对相机支持的所有功能的访问。
CIntegerPtr是一个用于IInteger接口指针的智能指针。它用于访问int64_t类型的相机特性,例如图像ROI(感兴趣的区域)。
CEnumerationPtr是一个用于IEnumeration接口指针的智能指针。它用于访问枚举类型的相机特性,例如像素格式。
CFloatPtr是一个用于IFloat接口指针的智能指针。它用于访问浮点类型的相机特性,例如增益(仅在符合SFNC 2.0版本的相机设备上)。
18、ParametrizeCamera_LoadAndSave
CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。CFeaturePersistence类是一个挂塔实用程序类,用于在文件或字符串中保存和恢复相机特性。
注意:当保存功能时,相机支持顺序器的行为分别取决于当前设置的“SequenceEnable”(一些GigE型号)或“SequencerConfigurationMode”(仅USB)功能。如果序列器处于配置模式,则只导出序列集。否则,相机功能将在没有序列集的情况下导出。
19、ParametrizeCamera_LookupTable_Universal
CBaslerUniversalInstantCamera类用于创建一个相机对象,其中第一个发现的相机设备独立于其接口。
相机功能LUTSelector用于选择查找表。由于一些相机具有10位的查找表,而另一些相机具有12位的查找表,因此必须首先确定当前设备的查找表的类型。LUTIndex和LUTValue参数用于访问查找表值。这个示例演示了如何使用查找表来引起传感器值的反转。
20、ParametrizeCamera_NativeParameterAccess_Universal
CBaslerUniversalInstantCamera类用于创建一个相机对象,其中第一个发现的相机设备独立于其接口。
本示例演示了IInteger类型(如宽度、高度、GainRaw(适用于2.0之前兼容SFNC版本的相机设备)、IEnumeration类型(如像素格式)或IFloat类型(如Gain(适用于兼容SFNC 2.0版本的相机设备)的相机特性的使用。
21、ParametrizeCamera_Shading_Universal
CDeviceInfo类用于寻找具有特定接口的摄像机,例如,GigE Vision only (BaslerGigEDeviceClass)。
CBaslerUniversalInstantCamera类用于使用第一个找到的GigE相机创建相机对象。
CAcquireSingleFrameConfiguration类用于注册配置单帧获取的标准事件处理程序。通过将注册模式设置为RegistrationMode_ReplaceAll,可以删除所有事件处理程序,从而覆盖默认配置。
CreateShadingData()假设已经设置了曝光条件(光照、曝光时间等)来提供均匀强度(灰度值)的图像,但是获得的图像并不均匀。计算了增益阴影数据,使观测到的不均匀性得到补偿。数据保存在本地文件中。
UploadFile()将计算得到的增益阴影数据从本地文件传输到相机。CheckShadingData()测试在多大程度上补偿了非均匀性。
22、ParametrizeCamera_UserSets_Universal
CBaslerUniversalInstantCamera类用于创建一个相机对象,其中第一个发现的相机设备独立于其接口。
相机参数UserSetSelector、UserSetLoad、UserSetSave和UserSetDefaultSelector用于演示用户配置集(用户集)的使用,以及如何配置相机以启动用户定义的设置。
23、Utility_GrabAvi
CAviWriter类用于创建AVI writer对象。writer对象接受以下参数:文件名、回放帧速率、像素输出格式、图像的宽度和高度、图像数据的垂直方向以及压缩选项(可选)。
startgrabbing()演示了如何通过应用GrabStrategy_LatestImages grab策略来启动抓取。当需要记录图像时,建议使用此策略。
CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。
CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
DisplayImage类用于显示抓取的图像。Add()根据需要将抓取的图像转换为正确的格式,并将其添加到AVI文件中。
24、Utility_GrabVideo
CVideoWriter类用于创建视频写入器对象。在打开视频写入器对象之前,使用当前的ROI宽度和高度参数值、像素输出格式、回放帧速率和压缩质量初始化该对象。
startgrabbing ()演示了如何通过应用GrabStrategy_LatestImages grab策略来启动抓取。当需要记录图像时,建议使用此策略。CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。
CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
DisplayImage类用于显示抓取的图像。Add()根据需要将抓取的图像转换为正确的格式,并将其添加到视频文件中。
25、Utility_Image
CPylonImage类描述一个图像。它处理下列事项:
•自动管理图像的大小和生存期。
•允许接管抓取结果,以防止其重用,只要需要。
•允许连接用户缓冲区或第三方软件包提供的缓冲区。
•提供以不同文件格式加载和保存图像的方法。
•作为CImageFormatConverter类的主要目标格式。
•简化平面图像处理。
•使得提取aoo更容易,例如,对于缺陷的缩略图。
可以使用CPylonBitmapImage类轻松创建用于显示图像的Windows位图。
•自动处理位图创建和生存期。
•提供以不同文件格式加载和保存图像的方法。
•用作CImageFormatConverter类的目标格式
位图图像类为HBitmap提供一个转换操作符。例如,可以使用cast操作符为Windows API函数提供句柄。
CImageFormatConverter类通过将源图像转换为另一种格式来创建新图像。CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。
CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
DisplayImage类用于显示抓取的图像。
26、Utility_ImageFormatConverter
CImageFormatConverter类通过将源图像转换为另一种格式来创建新图像。
CPylonImage类描述一个图像。它处理下列事项:
自动管理映像的大小和生存期。
允许接管抓取结果,以防止其重用,只要需要。
允许连接用户缓冲区或由第三方软件包提供的缓冲区。
提供以不同文件格式加载和保存图像的方法。
用作CImageFormatConverter类的主要目标格式。
使处理平面图像更容易。
使得提取图像roi更容易,例如,对于缺陷的缩略图。
CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
DisplayImage类用于显示抓取的图像。
27、Utility_ImageLoadAndSave
CImagePersistence类演示如何加载或保存图像。它可以用来检查图像是否可以保存而不需要预先转换。支持的图像文件格式有TIFF、BMP、JPEG和PNG。
CInstantCamera类用于使用找到的第一个相机设备创建即时相机对象。CGrabResultPtr类用于初始化将接收抓取结果数据的智能指针。它控制引用的抓取结果的重用和生存期。当所有引用抓取结果的智能指针超出作用域时,所引用的抓取结果将被重用或销毁。抓取结果在其来源的相机对象被销毁后仍然有效。
CPylonImage类描述一个图像。它处理以下问题
自动管理映像的大小和生存期。
允许接管抓取结果,以防止其重用,只要需要。
允许连接用户缓冲区或由第三方软件包提供的缓冲区。
提供以不同文件格式加载和保存图像的方法
用作CImageFormatConverter类的主要目标格式
使处理平面图像更容易
得提取图像roi更容易,例如,对于缺陷的缩略图。