机器视觉 while算子

Posted 沧海一笑-dj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器视觉 while算子相关的知识,希望对你有一定的参考价值。

00. 目录

01. 概述

while - 只要条件为真就开始执行循环。

02. 签名

while( : : Condition : )

03. 描述

只要Condition参数的值为’true’(或者数字不等于0),while就会循环运行相应的endwhile语句内的循环体。

如果Condition判定为’false’(0),则程序在相应的endwhile语句之后继续运行。

原文描述

while executes the loop body up to the corresponding endwhile statement as long as the Condition parameter evaluates to ‘true’ (or a number not equal 0).

If the condition evaluates to ‘false’ (0) the program is continued after the corresponding endwhile statement.

04. 注意

05. 参数

Condition (input_control) integer → (integer)
  循环的条件

06. 结果

如果指定参数的值正确,while(作为算子)返回2(H_MSG_TRUE)。 否则会引发异常并返回错误代码。

HDevelop例程

while.hdev Use a while loop to provide interaction until right mouse button is clicked

程序示例

dev_update_window ('off')
dev_close_window ()
dev_open_window (0, 0, 512, 512, 'black', WindowID)
read_image (Image, 'particle')
dev_display (Image)
stop ()
threshold (Image, Large, 110, 255)
dilation_circle (Large, LargeDilation, 7.5)
dev_display (Image)
dev_set_draw ('margin')
dev_set_line_width (3)
dev_set_color ('green')
dev_display (LargeDilation)
dev_set_draw ('fill')
stop ()
complement (LargeDilation, NotLarge)
reduce_domain (Image, NotLarge, ParticlesRed)
mean_image (ParticlesRed, Mean, 31, 31)
dyn_threshold (ParticlesRed, Mean, SmallRaw, 3, 'light')
opening_circle (SmallRaw, Small, 2.5)
connection (Small, SmallConnection)
dev_display (Image)
dev_set_colored (12)
dev_display (SmallConnection)
stop ()
dev_set_color ('green')
dev_display (Image)
dev_display (SmallConnection)
Button := 1
while (Button == 1)
  dev_set_color ('green')
  get_mbutton (WindowID, Row, Column, Button)
  dev_display (Image)
  dev_display (SmallConnection)
  dev_set_color ('red')
  select_region_point (SmallConnection, SmallSingle, Row, Column)
  dev_display (SmallSingle)
  NumSingle := |SmallSingle|
  if (NumSingle == 1)
    intensity (SmallSingle, Image, MeanGray, DeviationGray)
    area_center (SmallSingle, Area, Row, Column)
    dev_set_color ('yellow')
    set_tposition (WindowID, Row, Column)
    write_string (WindowID, 'Area='+Area+', Int='+MeanGray)
  endif
endwhile
dev_set_line_width (1)
dev_update_window ('on')

07. 附录

7.1 机器视觉博客汇总
网址:https://dengjin.blog.csdn.net/article/details/116837497

以上是关于机器视觉 while算子的主要内容,如果未能解决你的问题,请参考以下文章

机器视觉 边缘检测算子

机器视觉 exit算子

机器视觉 switch算子

机器视觉 export_def算子

机器视觉 insert算子(已废弃)

机器视觉 stop算子