halcon+WinForm顯示rgb圖並灰度化


1、halcon代碼,並導出成C#

read_image (Demo, 'C:/Users/user/Pictures/demo.jpg')
dev_display (Demo)
rgb1_to_gray (Demo, GrayImage)
dev_display (GrayImage)

2、新建WinForm項目后,配置Halcon
引用(鼠標右鍵)——添加引用,找到Halcon安裝目錄的bin\dotnet35\halcondotnet.dll

工具箱(空白處鼠標右鍵)——選擇項,.NET Framework組件,瀏覽,添加halcondotnet.dll(同上)

3、雙擊button,編輯相應程序(主要從生成的C#的action()方法中復制)

//以上命名空間系統自動生成
using HalconDotNet;//使用命名空間

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        HObject ho_Demo, ho_GrayImage;
        private void button1_Click(object sender, EventArgs e)
        {
            HOperatorSet.GenEmptyObj(out ho_Demo);//創建對象
            ho_Demo.Dispose();//清理內存,使得ho_Demo中空無一物
            HOperatorSet.ReadImage(out ho_Demo, "C:/Users/user/Pictures/demo.jpg");//讀入內存中
            HOperatorSet.DispObj(ho_Demo, hWindowControl1.HalconWindow);//顯示在HWindowControl控件中
        }

        private void button2_Click(object sender, EventArgs e)
        {
            HOperatorSet.GenEmptyObj(out ho_GrayImage);
            ho_GrayImage.Dispose();
            HOperatorSet.Rgb1ToGray(ho_Demo, out ho_GrayImage);
            HOperatorSet.DispObj(ho_GrayImage, hWindowControl1.HalconWindow);
            ho_Demo.Dispose(); //釋放ho_Demo的內存
            ho_GrayImage.Dispose();
        }
    }
}

注意(運行前):如果halcon是64位的,VS的目標平台也要改成64位的(項目——屬性)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM