首页 > 其他分享 >Blob分析算例

Blob分析算例

时间:2023-01-03 10:46:36浏览次数:35  
标签:分析 disp set 区域 算例 dev WindowID Blob display

* ball.hdev: Inspection of Ball Bonding
*
1、dev_update_window ('off')

  • 更新窗口,关闭
  • 如果只有被选中的对象需要显示在图形窗口中,这个选项应该设置为“关闭”。在这种情况下,对象应该由dev_display显示。

2、dev_close_window ()

  • 关闭活动的浮动图形窗口

3、dev_open_window (0, 0, 728, 512, 'black', WindowID)

  • 打开一个728,512的窗口

4、read_image (Bond, 'die/die_03')

  • 读取某文件夹下的图片
  • 注意读取的图片格式应该与它的后缀名相同。
  • 例如:该图像原本是.png格式,经过修改后缀名改为.jpg格式,是不能正常读取的。


5、dev_display (Bond)

  • 显示图像

6、set_display_font (WindowID, 14, 'mono', 'true', 'false')

  • 参数:窗口句柄,字体大小,字体类型,是否加粗,是否为斜体

disp_continue_message (WindowID, 'black', 'true')

  • 在屏幕右下角显示“Click 'Run' to continue”。
  • 参数:定义文本颜色,如果设置为''或'auto',则使用当前设置的颜色;如果设置为“true”,文本将写入一个白色框中。
  • 与stop()配合使用
  • 当碰到stop时,程序停止,按F5继续执行到下一个stop()处

7、threshold (Bond, Bright, 100, 255)

  • 利用全局阈值分割图像
  • 阈值范围为100~255,在这个范围内的图像区域会被分割出来

8、shape_trans (Bright, Die, 'rectangle2')

  • 变换区域的形状
  • 参数:输入区域、输出区域、变换形状

9、dev_set_color ('green')

  • 定义了用于在图形窗口中显示区域、xld和其他几何对象的颜色

10、dev_set_line_width (3)

  • 定义区域轮廓输出的线宽

11、dev_set_draw ('margin')

  • 定义区域填充模式

12、dev_display (Die)

  • 显示图像

13、disp_continue_message (WindowID, 'black', 'true')

  • 继续黑色

stop ()
14、reduce_domain (Bond, Die, DieGrey)

  • 减小图像的域
  • 参数:输入原图像、经过处理后需要分割出来的区域,输出分割区域

15、threshold (DieGrey, Wires, 0, 50)


16、fill_up_shape (Wires, WiresFilled, 'area', 1, 100)

  • 根据一定的条件进行填充

dev_display (Bond)
dev_set_draw ('fill')
dev_set_color ('red')
dev_display (WiresFilled)
disp_continue_message (WindowID, 'black', 'true')
stop ()
opening_circle (WiresFilled, Balls, 15.5)

  • 开运算,用一个半径15.5的圆放进填充区域,能放下的保留,不能放下的去除
  • 作用:消除小区域(比圆形结构单元小),平滑区域的边界

 

dev_set_color ('green')
dev_display (Balls)
disp_continue_message (WindowID, 'black', 'true')
stop ()
connection (Balls, SingleBalls)

  • 将不连通的区域打散

select_shape (SingleBalls, IntermediateBalls, 'circularity', 'and', 0.85, 1.0)

  • 参数:输入图像,输出图像,选择的形状特征,个体特征的联动关系,范围大小

sort_region (IntermediateBalls, FinalBalls, 'first_point', 'true', 'column')

  • 对区域进行排序
  • 参数:原区域,排序后的区域,排序模式,排序顺序(递增或递减),按照行排列或列排列


dev_display (Bond)
dev_set_colored (12)

  • 设置多个输出颜色

dev_display (FinalBalls)
disp_continue_message (WindowID, 'black', 'true')
stop ()
smallest_circle (FinalBalls, Row, Column, Radius)

  • 区域的最小外接圆
  • 参数:输入已打散的区域,输出各个区域的圆心坐标、半径


NumBalls := |Radius|
Diameter := 2 * Radius
meanDiameter := sum(Diameter) / NumBalls
mimDiameter := min(Diameter)
dev_display (Bond)
disp_circle (WindowID, Row, Column, Radius)

  • 在图像中显示上述圆圈

dev_set_color ('white')
for i := 1 to NumBalls by 1
if (fmod(i,2) == 1)
disp_message (WindowID, 'D: ' + Diameter[i - 1], 'image', Row[i - 1] - 2.7 * Radius[i - 1], max([Column[i - 1] - 60,0]), 'white', 'false')
else
disp_message (WindowID, 'D: ' + Diameter[i - 1], 'image', Row[i - 1] + 1.2 * Radius[i - 1], max([Column[i - 1] - 60,0]), 'white', 'false')
endif

endfor

  • 在指定位置编写一条或多条文本消息
  • 参数:窗口句柄,输出字符串,如下,文本位置(行列坐标),字体颜色,是否有边框
  • 第三个参数:如果设置为'window',文本位置将根据窗口坐标系给出。如果设置为'image',则使用图像坐标(这在缩放后的图像中可能有用)。



* dump_window (WindowID, 'tiff_rgb', './ball')
dev_set_color ('green')
dev_update_window ('on')
disp_continue_message (WindowID, 'black', 'true')
stop ()
dev_close_window ()

标签:分析,disp,set,区域,算例,dev,WindowID,Blob,display
From: https://www.cnblogs.com/lu294772961/p/17021358.html

相关文章

  • 怎么快速掌握企业财务情况?BI财务分析工具给你支一招
    站在财务的角度看,企业运营管理是以财务管理为中心。财务分析做得好,能直观展现资金的安全、收益和利用效率(周转性),给业务管理决策提供依据。那么,从哪些视角入手可以掌握企业财......
  • 模型性能分析:ROC 分析和 AUC
    本文将介绍模型性能分析的两个方法:ROC&AUC。ROC分析和曲线下面积(AUC)是数据科学中广泛使用的工具,借鉴了信号处理,用于评估不同参数化下模型的质量,或比较两个或多个模......
  • 分析.foreach和.map的区别
    在程序员编程的过程中经常会有遍历数组的需要,.foreach和.map都具有遍历的作用,那么他们的共同点和区别是什么呢?我们来分析一下.一、共同点1.都只能遍历数组。2.每次......
  • magento 数据结构分析
    1  首页启动——————————————————————————————————————————————————1QuerySETSQL_MODE=''1QuerySE......
  • 【数学建模入门】层次分析法
    层次分析法适用场景主要用于解决评价类问题(例如:选择哪种方案最好、哪位运动员或者员工表现最好)基本知识例题:假如有三个地方分别是苏杭、北戴河、桂林,我们现在要运用层......
  • 蓝桥真题——单词分析
    题目单词分析标签:字符串暴力2020省赛代码importosimportsys#请在此输入您的代码words=list(input())m=0m_word=''words.sort()foriinwords:......
  • 实时分析数据库 Druid,Mark 一下
    持之以恒,贵在坚持,每天进步一点点!前言Druid 则是一个分布式的支持实时分析的数据存储系统(DataStore)。Druid设计之初的想法就是为分析而生,它在处理数据的规模、数据处理的......
  • Spring Security 源码分析(四):Spring Social实现微信社交登录
    前言在上一章Spring-Security源码分析三-Spring-Social社交登录过程中,我们已经实现了使用​​SpringSocial​​​+​​Security​​的QQ社交登录。本章我们将实现微信的社......
  • linux led flash驱动分析
    led作为嵌入式设备中常见的器件,特别是在手机上,一般手机现在都会配置1-2led灯,用于camera补光和手电筒照明功能。led驱动是字符设备,数据流和操作比较简单。闪光灯的几种模......
  • (数学分析复习)含参量积分总结
    文章目录写在前面总结一下含参量正常积分、含参量反常积分、Euler积分,这部分内容主要为曲线积分曲面积分以及多重积分做铺垫。主要参考《数学分析(第四版)下册》(华东师范大......