工业相机的靶面也就是相机成像芯片的尺寸,一般描述相机靶面采用英寸来描述,在相机芯片中,1英寸为16mm。


通常说的2/3英寸靶面的相机意思就是,相机芯片对角线的尺寸为2/3英寸,也就是16mm*(2/3)约等于10.67mm
接下来用大恒MER2-503-36U3M工业相机举例

相机的分辨率为2448×2048,代表横向有2448个像元,纵向有2048个像元
相机的分辨率为2448×2048=5013504分辨率(大约500万)
像元尺寸为3.45μ=0.00345mm
因此相机靶面的横向尺寸为2448×0.00345mm,纵向尺寸为2048×0.00345mm
结果为8.4456mm×7.0656mm
根据勾股定理,对角线尺寸为11.01mm
与标准2/3英寸(10.67mm)在偏差范围内,通常在1mm内的偏差均算正常,后面会在镜头选型中提到

工业相机与工业镜头是两个独立的部分镜头分为远心和FA镜头,根据不同的拍摄场景选择不同的镜头
①首先相机镜头的接口保持一致,确保相机与镜头可以安装在一起!
通常的接口类型有以下几种
| 接口类型 | 法兰后截距(mm) | 卡口环直径(mm) |
|---|---|---|
| C | 17.526 | 1(inch) |
| CS | 12.5 | 1(inch) |
| M42 | 12 | 42 |
| F | 46.5 | 47 |
除此之外还有M58、M72等适应大靶面的接口类型,还有施耐德镜头的 V 接口。
②镜头的靶面必须比相机的靶面大!

当镜头的靶面小于相机的靶面时,采集到的图像边缘处会有暗角出现!!
③常见的镜头靶面尺寸:


可以看到这个镜头的像方视野是18.5mm,也就是镜头靶面是18.5mm,因此支持16*1.1 = 17.6mm靶面的相机;
可以在官方资料中看到,大靶面的镜头支持小靶面的相机,进行等比例换算即可得到成像视野

④FA镜头的焦距:
镜头的焦距指的是镜头镜片到光路聚焦的位置
大恒标准的FA镜头的焦距有6mm、8mm、12mm、16mm、25mm、35mm、50mm、75mm这几种
Kowa 镜头最小有3.5mm的镜头,日本品牌
长步道 有电动对焦镜头,通过串口通讯进行控制,湖南国产
在同样的距离下,焦距越大,视野越小


⑤使用FA镜头如何计算拍摄视野?
在镜头和相机匹配的情况下(镜头靶面大于相机靶面,接口匹配的情况下)
利用相似三角形原理可以得到:


通过比例运算进行视野计算
当需要进行视觉检测时,如何却定检测精度呢?
当视野计算出来后,用视野尺寸/像素数量,即可确定单个像素代表的尺寸,硬件达到的精度就确定了
例如:
计算出横向视野Width为200mm,相机横向分辨率为2448个像素,可以确定拍摄精度为200/2448 = 0.081mm/像素
通常误差根据拍摄效果决定,一般取3-5个像素
从给定URL下载文件并立即将其上传到AmazonS3的更直接的方法是什么(+将有关文件的一些信息保存到数据库中,例如名称、大小等)?现在,我既不使用Paperclip,也不使用Carrierwave。谢谢 最佳答案 简单明了:require'open-uri'require's3'amazon=S3::Service.new(access_key_id:'KEY',secret_access_key:'KEY')bucket=amazon.buckets.find('image_storage')url='http://www.ex
这里是Ruby新手。完成一些练习后碰壁了。练习:计算一系列成绩的字母等级创建一个方法get_grade来接受测试分数数组。数组中的每个分数应介于0和100之间,其中100是最大分数。计算平均分并将字母等级作为字符串返回,即“A”、“B”、“C”、“D”、“E”或“F”。我一直返回错误:avg.rb:1:syntaxerror,unexpectedtLBRACK,expecting')'defget_grade([100,90,80])^avg.rb:1:syntaxerror,unexpected')',expecting$end这是我目前所拥有的。我想坚持使用下面的方法或.join,
状态:我正在构建一个应用程序,其中需要一个可供用户选择颜色的字段,该字段将包含RGB颜色代码字符串。我已经测试了一个看起来很漂亮但效果不佳的。它是“挑剔的颜色”,并托管在此存储库中:https://github.com/Astorsoft/picky-color.在这里我打开一个关于它的一些问题的问题。问题:请建议我在Rails3应用程序中使用一些颜色选择器。 最佳答案 也许页面上的列表jQueryUIDevelopment:ColorPicker为您提供开箱即用的产品。原因是jQuery现在包含在Rails3应用程序中,因此使用基
项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU
📢博客主页:https://blog.csdn.net/weixin_43197380📢欢迎点赞👍收藏⭐留言📝如有错误敬请指正!📢本文由Loewen丶原创,首发于CSDN,转载注明出处🙉📢现在的付出,都会是一种沉淀,只为让你成为更好的人✨文章预览:一.分辨率(Resolution)1、工业相机的分辨率是如何定义的?2、工业相机的分辨率是如何选择的?二.精度(Accuracy)1、像素精度(PixelAccuracy)2、定位精度和重复定位精度(RepeatPrecision)三.公差(Tolerance)四.课后作业(Post-ClassExercises)视觉行业的初学者,甚至是做了1~2年
我对如何计算通过{%assignvar=0%}赋值的变量加一完全感到困惑。这应该是最简单的任务。到目前为止,这是我尝试过的:{%assignamount=0%}{%forvariantinproduct.variants%}{%assignamount=amount+1%}{%endfor%}Amount:{{amount}}结果总是0。也许我忽略了一些明显的东西。也许有更好的方法。我想要存档的只是获取运行的迭代次数。 最佳答案 因为{{incrementamount}}将输出您的变量值并且不会影响{%assign%}定义的变量,我
给定一个nxmbool数组:[[true,true,false],[false,true,true],[false,true,true]]有什么简单的方法可以返回“该列中有多少个true?”结果应该是[1,3,2] 最佳答案 使用转置得到一个数组,其中每个子数组代表一列,然后将每一列映射到其中的true数:arr.transpose.map{|subarr|subarr.count(true)}这是一个带有inject的版本,应该在1.8.6上运行,没有任何依赖:arr.transpose.map{|subarr|subarr.in
我完全不是程序员,正在学习使用Ruby和Rails框架进行编程。我目前正在使用Ruby1.8.7和Rails3.0.3,但我想知道我是否应该升级到Ruby1.9,因为我真的没有任何升级的“遗留”成本。缺点是什么?我是否会遇到与普通gem的兼容性问题,或者甚至其他我不太了解甚至无法预料的问题? 最佳答案 你应该升级。不要坚持从1.8.7开始。如果您发现不支持1.9.2的gem,请避免使用它们(因为它们很可能不被维护)。如果您对gem是否兼容1.9.2有任何疑问,您可以在以下位置查看:http://www.railsplugins.or
我希望用户从一个模型的三个选项中选择一个。即我有一个模型视频,可以被评为正面/负面/未知目前我有三列bool值(pos/neg/unknown)。这是处理这种情况的最佳方式吗?为此,表单应该是什么样的?目前我有类似的东西但显然它允许多项选择,而我试图将它限制为只有一个..怎么办? 最佳答案 如果要使用字符串列,让我们说rating。然后在你的表单中:#...#...它只允许一个选择编辑完全相同但使用radio_button_tag: 关于ruby-on-rails-Rails单选按钮-模
我的Rails应用程序中安装了carrierwave。但是,当用户上传多页pdf时,我只希望应用程序获取文档中的第一页并将其转换为jpeg。这可能吗?用什么命令?这是我的uploader。#encoding:utf-8classImageUploader[200,300]##defscale(width,height)##dosomething#end#Createdifferentversionsofyouruploadedfiles:version:thumbdoprocess:resize_to_fill=>[150,210]process:convert=>:jpgdefful