美文网首页
大恒水星相机硬触发测试

大恒水星相机硬触发测试

作者: 张王李刘赵孙杨 | 来源:发表于2018-11-17 00:04 被阅读104次

大恒水星相机硬触发测试:

c++实现:

class CSampleCaptureEventHandler : public ICaptureEventHandler
{
public:
    void DoOnImageCaptured(CImageDataPointer&objImageDataPointer, void* pUserParam) //回调函数处理
    {
        cout << "收到一帧图像!" << endl;
        cout << "ImageInfo: " << objImageDataPointer->GetStatus() << endl;
        cout << "ImageInfo: " << objImageDataPointer->GetWidth() << endl;
        cout << "ImageInfo: " << objImageDataPointer->GetHeight() << endl;
        cout << "ImageInfo: " << objImageDataPointer->GetPayloadSize() << endl;
    }
};

void run()
{
    //声明事件回调对象指针
    IDeviceOfflineEventHandler* pDeviceOfflineEventHandler = NULL;///<掉线事件回调对象
    IFeatureEventHandler* pFeatureEventHandler = NULL;///<远端设备事件回调对象
    ICaptureEventHandler* pCaptureEventHandler = NULL;///<采集回调对象

        //初始化
    IGXFactory::GetInstance().Init();

    //枚举设备
    gxdeviceinfo_vector vectorDeviceInfo;
    IGXFactory::GetInstance().UpdateDeviceList(1000, vectorDeviceInfo);

    int a = 0;
    if (0 == vectorDeviceInfo.size())
    {
        cout << "无可用设备!" << endl;
        cin >> a;

        //反初始化库
        IGXFactory::GetInstance().Uninit();
        return;
    }

    //打开第一台设备以及设备下面第一个流
    CGXDevicePointer ObjDevicePtr = 
        IGXFactory::GetInstance().OpenDeviceBySN(vectorDeviceInfo[0].GetSN(), GX_ACCESS_EXCLUSIVE);
    CGXStreamPointer ObjStreamPtr = ObjDevicePtr->OpenStream(0);

    //获取远端设备属性控制器
    CGXFeatureControlPointer ObjFeatureControlPtr = ObjDevicePtr->GetRemoteFeatureControl();
    ObjFeatureControlPtr->GetEnumFeature("TriggerMode")->SetValue("On");
    ObjFeatureControlPtr->GetEnumFeature("TriggerSource")->SetValue("Line0");
    ObjFeatureControlPtr->GetEnumFeature("TriggerActivation")->SetValue("RisingEdge");
    ObjFeatureControlPtr->GetFloatFeature("TriggerDelay")->SetValue(500000);
    ObjFeatureControlPtr->GetFloatFeature("TriggerFilterRaisingEdge")->SetValue(5000);

    //注册回调采集
    pCaptureEventHandler = new CSampleCaptureEventHandler();
    ObjStreamPtr->RegisterCaptureCallback(pCaptureEventHandler, NULL);

    //发送开采命令
    ObjStreamPtr->StartGrab();
    ObjFeatureControlPtr->GetCommandFeature("AcquisitionStart")->Execute();

    Sleep(10000);

    //发送停采命令
    ObjFeatureControlPtr->GetCommandFeature("AcquisitionStop")->Execute();
    ObjFeatureControlPtr->GetEnumFeature("TriggerMode")->SetValue("Off");

    ObjStreamPtr->StopGrab();

    //注销采集回调
    ObjStreamPtr->UnregisterCaptureCallback();

    //释放资源
    ObjStreamPtr->Close();
    ObjDevicePtr->Close();

    //反初始化库
    IGXFactory::GetInstance().Uninit();

    //销毁事件回调指针
    if (NULL != pCaptureEventHandler)
    {
        delete pCaptureEventHandler;
        pCaptureEventHandler = NULL;
    }
    cin >> a;
}

结果图:


结果图

相关文章

  • 大恒水星相机硬触发测试

    大恒水星相机硬触发测试: c++实现: 结果图:

  • linux下用大恒相机采图

    平台:Ubuntu 16.04相机: MER-301-125U3M 1. 安装大恒的SDK 从大恒官网下载linu...

  • linux下使用大恒相机实时运行ORB-SLAM

    平台:Ubuntu 16.04相机: MER-301-125U3M (大恒其他型号的USB相机亦可) 本文是在原...

  • 2021-08-18日报

    测试如何触发告警 测试post报文

  • 七斤烙饼

    上次说过,我会给大家讲一下命硬私董会和恒洋瓦的故事。今天这会儿没事,就从命硬私董会的发起人恒洋老师说起吧。 时间大...

  • 相机测试

    1.主打功能 2.确认竞品 3.特殊功能 4.LCD显示 5.模组+sensor拍样张 6.工具图:IS...

  • 相机测试

    https://www.dxomark.cn/how-dxomark-mobile-scores-smartpho...

  • Android7.0调系统相机异常: FileUriExpose

    调系统相机,共出现了两个问题: 1.调用相机7.0触发异常: Attempt to invoke virtual ...

  • 恒大恒大

    恒大恒大 毫无悬念,恒大七连冠。 尽管人员老化、队伍疲惫、核心缺失,但是冠军班底在。我不给,你拿不走。 ...

  • 今晚在吃饭中成长

    #命硬私董会# 通过与魏琪的缘分今晚能恒洋老师的直播精彩分享,感谢恒洋老师在这个疫情特殊的时期为大家创造了大社群一...

网友评论

      本文标题:大恒水星相机硬触发测试

      本文链接:https://www.haomeiwen.com/subject/xwovfqtx.html