• halcon界面开发系列 —— get_part与set_part


    get_part( : : WindowHandle : Row1Column1Row2Column2),set_part同理。

    GetPart官方解释:返回窗口中显示的图像部分的左上角和右下角。

    这个图像,就是窗中图。它的左上角、右下角就是上图绿色箭头所示(体会下上图坐标的负值)。

    窗中图在处理位置信息时黑暗区域也是图像的一部分(只不过有坐标无像素)

    Halcon中图的行列是从0开始的,row=0即第1行。

    【代码举例】注意其中的文字描述

    dev_close_window ()
    read_image (Image, 'D:/lena512.bmp')
    get_image_size (Image, Width, Height)
    dev_open_window (0, 0, 300, 300, 'black', WindowHandle)
    *图像的全部,展示在窗体中
    set_part (WindowHandle, 0, 0, Height-1, Width-1)
    disp_image (Image, WindowHandle)
    *获取“窗中图”的左上角、右下角位置坐标
    get_part (WindowHandle, Row1, Column1, Row2, Column2)
    *向上、下各拉取100的黑暗区域,作为图的一部分。展示在窗体中(产生缩放的错觉)
    set_part (WindowHandle, Row1-100, Column1, Row2+100, Column2)
    clear_window (WindowHandle)
    disp_obj (Image, WindowHandle)

    【用处】建立起电脑桌面坐标系统、图像坐标系统的联系。

    鼠标、电脑桌面、控件(MFC或Qt)的坐标都是电脑桌面坐标系统(下图紫色字体)。

    图像的坐标是图像坐标系统(下图橙色字体),lena是512*512,即使缩放的再小,也是512*512。

    黑色区域是窗中图,属于图像坐标系统。宽、高:Column2-Column1+1,Row2-Row1+1

     

     以上内容的用处如下:

    1、鼠标拖动图片平移

    2、鼠标所指的图像像素位置(get_grayVal就可以获得灰度值了)

    3、计算图像被缩放了多少

     

  • 相关阅读:
    ObjectDataSource用法之六(刪除)
    ObjectDataSourc用法之七(新增)
    C# 装箱和拆箱
    Android SD卡中压缩包解压(ZIP文件)
    Android 调用系统的拨号服务实现 电话拨打功能
    Android 判断SD卡存不存在
    android中IdleHandler的使用
    android使用遥控器模拟鼠标拖拽操作
    Android SD卡 文件或目录拷贝、复制、粘贴
    C#在线获取歌词(转)
  • 原文地址:https://www.cnblogs.com/xixixing/p/14341749.html
Copyright © 2020-2023  润新知