Halcon视觉之家-Halcon视觉技术论坛

 找回密码
 会员注册

QQ登录

只需一步,快速开始

扫一扫,微信登录

查看: 2672|回复: 3

[未解决] 相机触发采集 怎么计算采集图像的时间呢 从那句程序开.....

[复制链接]

该用户从未签到

9

主题

55

帖子

142

积分

Rank: 1

积分
142

切换助手验证会员

QQ
发表于 2019-5-29 14:06:53 | 显示全部楼层 |阅读模式

51Halcon诚邀您的加入,专注于机器视觉开发与应用技术,我们一直都在努力!

您需要 登录 才可以下载或查看,没有账号?会员注册

x
  void RunSingleCamera(ManagedPGRGuid guid)
        {
            const int NumImages = 10;
            ManagedCamera cam = new ManagedCamera();
            // Connect to a camera
            cam.Connect(guid);
            // Get the camera information
            CameraInfo camInfo = cam.GetCameraInfo();
            PrintCameraInfo(camInfo);
            // Get embedded image info from camera
            EmbeddedImageInfo embeddedInfo = cam.GetEmbeddedImageInfo();
            // Enable timestamp collection
            if (embeddedInfo.timestamp.available == true)
            {
                embeddedInfo.timestamp.onOff = true;
            }
            // Set embedded image info to camera
            cam.SetEmbeddedImageInfo(embeddedInfo);
            // Start capturing images
            cam.StartCapture();
            // Create a raw image
            ManagedImage rawImage = new ManagedImage();
            // Create a converted image
            ManagedImage convertedImage = new ManagedImage();
            for (int imageCnt = 0; imageCnt < NumImages; imageCnt++)
            {
                try
                {
                    // Retrieve an image
                    cam.RetrieveBuffer(rawImage);
                }
                catch (FC2Exception ex)
                {
                    Console.WriteLine("Error retrieving buffer : {0}", ex.Message);
                    continue;
                }

                // Get the timestamp
                TimeStamp timeStamp = rawImage.timeStamp;
                Console.WriteLine(
                   "Grabbed image {0} - {1} {2} {3}",
                   imageCnt,
                   timeStamp.cycleSeconds,
                   timeStamp.cycleCount,
               timeStamp.cycleOffset);
                // Convert the raw image
                rawImage.Convert(PixelFormat.PixelFormatBgr, convertedImage);
                // Create a unique filename
                string filename = String.Format(
                   "FlyCapture2Test_CSharp-{0}-{1}.bmp",
                   camInfo.serialNumber,
                   imageCnt);
                // Get the Bitmap object. Bitmaps are only valid if the
                // pixel format of the ManagedImage is RGB or RGBU.
                System.Drawing.Bitmap bitmap = convertedImage.bitmap;
                // Save the image
                bitmap.Save(filename);
            }
            // Stop capturing images
            cam.StopCapture();
            // Disconnect the camera
            cam.Disconnect();
        }

该用户从未签到

9

主题

55

帖子

142

积分

Rank: 1

积分
142

切换助手验证会员

QQ
 楼主| 发表于 2019-5-29 14:08:11 | 显示全部楼层
从那句话开始 到那句话结束 才算真正的在一个触发信号内 完成了相机采图 大佬们教教我

签到天数: 14 天

连续签到: 1 天

[LV.3]偶尔看看II

231

主题

1064

帖子

6956

积分

Rank: 9

积分
6956

热心会员突出贡献切换助手验证会员最佳新人

发表于 2019-5-29 14:54:06 | 显示全部楼层
wwwttttyyyy 发表于 2019-5-29 14:08
从那句话开始 到那句话结束 才算真正的在一个触发信号内 完成了相机采图 大佬们教教我
...

开始采集代码:cam.StartCapture();
然后同步接收缓存的代码:cam.RetrieveBuffer(rawImage);
上面两句就是相机开始采集并且获取图形的代码!你可以在第一段代码之前加开始时间到到第二段代码后截至就是采集时间!
rawImage.Convert(PixelFormat.PixelFormatBgr, convertedImage); 这句是转换原始图像格式为RGB三通道图像。

该用户从未签到

9

主题

55

帖子

142

积分

Rank: 1

积分
142

切换助手验证会员

QQ
 楼主| 发表于 2019-5-29 15:04:26 | 显示全部楼层
绝地武士 发表于 2019-5-29 14:54
开始采集代码:cam.StartCapture();
然后同步接收缓存的代码:cam.RetrieveBuffer(rawImage);
上面两句 ...

感谢大佬指点
您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

视觉培训招生
论坛下线通知X

建议您使用Chrome、Firefox、Edge、360、IE10以上等主流浏览器浏览本论坛

算子查询| 申请友链| 小黑屋| 手机版| Archiver| 业务支持|

© 2015-2021 Halcon视觉之家  X3.4  粤ICP备15095995号 粤公网安备44030602000670号

本站已安全运行:

快速回复 返回顶部 返回列表