zw版【转发·台湾nvp系列Delphi例程】HALCON SetGray

本文介绍了一个使用Delphi结合HALCON进行图像处理的例子,具体展示了如何通过区域生长算法找到图像中的圆形区域,并将其高亮显示。此例程适用于初学者理解图像处理的基本流程。

zw版【转发·台湾nvp系列Delphi例程】HALCON SetGray

 

 

SetGray_Delphi.PNG

unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, OleCtrls, HALCONXLib_TLB;
type
TForm1 = class(TForm)
HWindowXCtrl1: THWindowXCtrl;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
img : HImageX;
rg, Circles : HRegionX;
tp : HTupleX;
w, h : OleVariant;
Row, Column, Radius : OleVariant;
begin
img := CoHImageX.Create;
Circles := CoHRegionX.Create;
tp := CoHTupleX.Create;
img.ReadImage('pads');
rg := img.Regiongrowing(3, 3, 6, 100);
rg := rg.SelectShape('area', 'and', 100, 2000);
Row := rg.SmallestCircle(Column, Radius);
Circles.GenCircle(Row, Column, Radius);
w := img.GetImageSize(h);
HWindowXCtrl1.HalconWindow.SetPart(0, 0, h - 1, w - 1);
HWindowXCtrl1.HalconWindow.SetDraw('margin');
HWindowXCtrl1.HalconWindow.SetLineWidth(2);
HWindowXCtrl1.HalconWindow.SetGray(tp.TupleConcat(tp.TupleConcat(0, 120), 255));
img.DispObj(HWindowXCtrl1.HalconWindow);
Circles.DispObj(HWindowXCtrl1.HalconWindow);
end;
end.

 

转载于:https://www.cnblogs.com/ziwang/p/4851177.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值