自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

转载 ​​​​OpenCV仿射变换+投射变换+单应性矩阵

答:使用estimateRigidTransform()或者findHomography。答:使用getPerspectiveTransform()。答:使用perspectiveTransform()。答:使用perspectiveTransform()。答:使用getAffineTransform()。答:使用estimateAffine3D。答:使用warpAffine()。答:使用transform()。

2023-08-25 11:59:37 267

转载 旋转中心的标定

如下图,在旋转轴工具上放置一个Mark点,旋转角度,获得三个点,三点拟合圆,获得圆心坐标和旋转半径(默认已经做完九点标定,这三个点转为世界坐标后再计算圆心坐标和旋转半径)

2023-08-24 08:55:17 1005

原创 C# 圆盘(hsv)颜色选择器

库包含一系列自定义控件和实用程序类,适用于使用颜色的 Windows 窗体应用程序。控件可用于通过 HSL 进行颜色选择。

2023-07-12 16:29:18 1539

原创 Git常用指令

克隆到指定路径:git clone repo:Git 仓库、directory:本地目录。将本地的 master 分支推送到 origin 主机的 master 分支:git push origin master。克隆到当前路径:git clone repo:Git 仓库。添加Git地址:git remote add origin。或 git add -A 或 git add --all。提交文件到暂存区:git add 文件名。

2023-07-01 17:26:25 553

转载 Visual Studio 2019安装vsix插件及Gitee.VisualStudio安装包

4.2复制Visual Studio 2019的安装路径,输入“cd D:\Visual Studio2019\Common(D:\Visual Studio2019是我的安装路径),然后回车。4.3输入“VSIXInstaller.exe(空格) 插件的路径”(我的放在D盘了),然后回车。6、打开Visual Studio 2019点击 “扩展”-“管理扩展”3、win+R打开运行,输入“cmd”7、在“已安装”可以看到安装的插件。4.1输入“D:”,然后回车。5、点击安装后,安装成功。

2023-02-07 11:53:54 3924 2

转载 虚拟机windows7安装启动MYSQL5.7

虚拟机windows7安装启动MYSQL5.7

2022-09-14 12:53:25 1487

转载 四大步骤,彻底关闭Win10自动更新

尽管Win11已经发布了一段时间,但目前互联网上大部分电脑用户所使用的的操作系统仍是Win10,对于Win10,笔者相信大部分人应该都不陌生,作为目前市面上占比最高的电脑系统,Win10的许多功能和操作逻辑都十分优秀,不过有优秀的地方必然也有糟糕的缺点,其中问题最大的当属Win10的自动更新了。win10的自动更新可谓是非常顽固,很多用户在网上试了各种关闭win10自动更新的方法,刚开始看着好像是关闭更新了,可没过多久系统就又开始自动更新了。今天笔者就来教大家如何彻底关闭win10自动更新,该方法亲测有效。

2022-06-24 19:22:15 1524

转载 C# 全局钩子实现扫码枪获取信息

1.扫描枪获取数据原理基本相当于键盘数据,获取扫描枪扫描出来的数据,一般分为两种实现方式。  a)文本框输入获取焦点,扫描后自动显示在文本框内。  b)使用键盘钩子,勾取扫描枪虚拟按键,根据按键频率进行手动输入和扫描枪扫描判断。2.要实现系统钩子其实很简单,调用三个Win32的API即可。SetWindowsHookEx用于设置钩子。(设立一道卡子,盘查需要的信息)CallNextHookEx用于传递钩子(消息是重要的,所以从哪里来,就应该回到哪里去,除非你决定要封锁消息)Unh..

2021-12-17 16:08:57 6365 3

转载 C#:把dll封入exe中方法

在这个事件中,可以重新为加载失败的程序集手动加载如果你将dll作为资源文件打包的你的应用程序中(或者类库中)就可以在硬盘加载失败的时候 从资源文件中加载对应的dll就像这样:class Program{ static Program() { //这个绑定事件必须要在引用到TestLibrary1这个程序集的方法之前,注意是方法之前,不是语句之间,就算语句是在方法最后一行,在进入方法的时候就会加载程序集,如果这个时候没有绑定事件,则直接抛出异常,或者.

2021-11-19 12:33:37 808

转载 20种PLC元件编号和Modbus编号地址对应表

20种PLC元件编号和Modbus编号地址对应表曾经做过单片机和三菱FX3G-40MR/ES-A、西门子S7-200 CPU226 AC/DC/RLY、欧姆龙CP1H-X40DR-A、松下AFPX-C40R、台达DVP-12SA2、信捷XC5-48、永宏FBs-40MC、产电XBC-DR40S、汇川H2u-2416MT-XP、英威腾IVC2H-1616MAT6、基恩士KV-N40AR、施耐德TM218LDAE40DRPHN、海为H40S2R系列、维控LX3V1212MT系列、和利时LE5109、台安AP-

2021-10-21 18:32:14 5464

转载 C# WPF:初识布局容器

StackPanel堆叠布局StackPanel是简单布局方式之一,可以很方便的进行纵向布局和横向布局 StackPanel默认是纵向布局的<Window x:Class="WpfApplication1.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title=

2021-09-11 17:07:25 487

原创 C#:RichTextBox 追加其它颜色的行列

1、新建静态扩展方法 public static class RichTextBoxExtension { public static void AppendTextColorful(this RichTextBox rtBox, string text, Color color, bool addNewLine = true) { if (addNewLine) { t...

2021-08-05 08:39:05 733

转载 Python: pip升级报错了:You are using pip version 10.0.1, however version 20.3.3 is available.

1,Python使用命令:python -m pip install --upgrade pip升级pip的时候报了下面这个错2,换了个命令:python -m pip install --upgrade pip -i https://pypi.douban.com/simple更新成功了,但又报了一个新的错误:AttributeError: ‘NoneType’ object has no attribute ‘bytes’3,输入命令:easy_install...

2021-07-20 09:54:43 756

转载 C#:Dockpanel的一些入门的基本操作

原文链接:一、引用:1.建立一个WinForm工程,默认生成了一个WinForm窗体Form1(此处默认为主窗体)。2.引用—>添加引用—>浏览—>weiFenLuo.winFormsUI.Docking.dll。3.设置Form1窗体属性IsMdiContainer:True。4.工具箱—>右键—>选择项—>.net组件—>浏览—>weiFenLuo.winFormsUI.Docking.dll—>在工具箱出现dockPanel。

2021-05-24 14:29:05 1020

转载 C#:WinForm无边框窗体移动方法、模仿鼠标单击标题栏移动窗体位置

方法一:直接通过修改窗体位置从而达到移动窗体的效果方法二:直接伪装发送单击任务栏消息,让应用程序误以为单击任务栏从而移动窗体方法一1.定义一个位置信息Point用于存储鼠标位置1 private Point mPoint;2.给窗体等控件增加MouseDown和MouseMove事件/// <summary> /// 鼠标按下 /// </summary> /// <param na

2021-05-07 09:31:21 305

转载 C#:invoke 与 BeginInvoke使用区别

invoke和begininvoke 区别一直对invoke和begininvoke的使用和概念比较混乱,这两天看了些资料,对这两个的用法和原理有了些新的认识和理解。首先说下,invoke和begininvoke的使用有两种情况: 1. control中的invoke、begininvoke。 2. delegrate中的invoke、begininvoke。 这两种情况是不同的,我们这里要讲的是第1种。下面我们在来说下.NET中对invoke和begininvoke的官方定...

2021-03-17 09:23:15 165

转载 C#:委托基础与事件

通过以下思维导图,学习委托的基本概念,后面着重讲解委托的运用,希望通过最简单的方式收获更多的知识。1.委托的各种写法1、委托 委托名=new 委托(会调用的方法名); 委托名(参数);2、委托 委托名 =会调用的方法名; 委托名(参数);3、匿名方法:委托 委托名=delegate(参数){会调用的方法体};委托名(参数);4、拉姆达表达式:委托 委托名=((参数1,。。参数n)=>{会调用的方法体});委托名(参数);5、用Action<T>和Func<

2021-03-17 09:07:54 137

原创 C# :socket 通讯基础使用实例

们在讲解Socket编程前,先看几个和Socket编程紧密相关的概念:TCP/IP层次模型 当然这里我们只讨论重要的四层 01,应用层(Application):应用层是个很广泛的概念,有一些基本相同的系统级TCP/IP应用以及应用协议,也有许多的企业应用和互联网应用。http协议在应用层运行。 02,传输层(Tanspot):传输层包括UDP和TCP,UDP几乎不对报文进行检查,而TCP提供传输保证。 03,网络层(Netwok):网络层协议由...

2021-03-12 19:58:02 397

转载 C#:向C++封送结构体数组

在使用第三方的非托管API时,我们经常会遇到参数为指针或指针的指针这种情况,一般我们会用IntPtr指向我们需要传递的参数地址;但是当遇到这种一个导出函数时,我们如何正确的使用IntPtr呢,extern "C" __declspec(dllexport) int GetClass(Class pClass[50]);由于这种情况也经常可能遇到,所以我制作了2个示例程序来演示下如何处理这种非托管函数的调用!首先创建一个C++ 的DLL 设置一个如上的导出函数#...

2021-03-11 09:04:38 1296

转载 C# : 调用C++动态库(dll)

在实际软件开发过程中,由于公司使用了多种语言开发,在C#中可能需要实现某个功能,而该功能可能用其他语言已经实现了,那么我们可以调用其他语言写好的模块吗?还有就是,由于C#开发好的项目,我们可以利用reflector等反编译工具反编译出其源代码,所以对于一些核心算法,我们不希望被别人知道,因此为了增强代码的安全性,我们需要将一些核心算法用C或C++来编写,然后用C#来调用这些已经写好的接口。在面对以上情况时,我们该怎么做呢?方案一:重新实现 针对第一种情况,我们可以将C或者C++功能用C...

2021-03-11 08:07:23 879

转载 Halcon:模版匹配

一:函数介绍1.创建模板create_shape_model(Template: :NumLevels,AngleStart,AngleExtent,AngleStep,Optimization,Metric,Contrast,MinContrast:ModelID)Template:模板图像NumLevels:图像金字塔级数,该值越小,模板匹配耗时越长,可设置自动-‘Auto’,可使用get_shape_model_params来获取模板所有参数,包括级数。An...

2020-10-29 15:56:22 1555

转载 C# 使用 Windows API 操作控件: SendMessage

在C#中,程序采用了的驱动采用了事件驱动而不是原来的消息驱动,虽然.net框架提供的事件已经十分丰富,但是在以前的系统中定义了丰富的消息对系统的编程提供了方便的实现方法,因此在C#中使用消息有时候还是大大提高编程的效率的。定义消息在c#中消息需要定义成windows系统中的原始的6进制数字,比如const int WM_Lbutton = 0x0; //定义了鼠标的左键点击消息public const int USER = 0x000 // 是windows系统定义的用户消息消息发送消息发送是通过w

2020-09-26 14:52:38 1199

转载 WinAPI——Windows 消息

消息 值 注释 WM_NULL $0000 WM_CREATE $0001 WM_DESTROY $0002 WM_MOVE $0003 WM_SIZE $0005 WM_ACTIVATE $0006 WM_SETFOCUS $0007 WM_KILLFOCUS $0008 WM_ENABLE $000A WM...

2020-09-26 14:35:19 298

转载 C#中调用halcon引擎来执行hdev程序

调用halcon引擎有两个直接的好处: 避免C# 与halcon代码混编时可能产生的内存泄露问题 修改halcon程序时不用重新编译C# 勇哥写了一个示例,详细的应用感受和缺点限制勇哥会持续做相关的总结给大家分享。对于halcon17来说,要运行下面的程序,你要引用C#halcondotnet.dllhdevenginedonet.dllC#using HalconDotNet;using System;using System....

2020-09-25 20:45:59 3156 2

原创 C#调用 Halcon引擎执行代码

Halcon引擎可以直接执行halcon代码,把halcon程序当做C#的一个方法来调用,这样可以减轻C#这边的程序负担,而且可以避免内在泄露等bug的出现。还有一种好处是方便调试视觉代码,你只需要启动halcon,直接用修改调试视觉代码即可,C#那边不需要做改变。这种方式的缺点是定位halcon代码的错误比较麻烦,你不可能在halcon代码那里实时下断点。详细介绍见勇哥帖子,做个标记,有需要再看!网址链接:http://www.skcircle.com/?id=1344...

2020-09-22 20:22:58 2560

原创 Halcon:手眼标定——眼在手外与眼在手上

为什么需要九点标定?为了得到机械和相机的关系,就好比人的手和眼的关系。我们用手将一个物体放到空间的一个位置,用眼看到这个物体,这也存在两个坐标系,一个是手所在的运动空间的坐标系,一个是视网膜上成像的二维平面坐标系。我们用眼看到一个物体,用手去拿,之所以能够准确地拿到这个物体,是因为我们的神经系统把这两个坐标系准确地关联好了。机械和视觉系统也是这样,相机对工作空间中的物体进行拍照,机械手要想准确地取到这个物体,就必须首先把机械坐标系和视觉坐标系进行准确地关联。九点标定的基本原理:使用机械手将物体放在工作空

2020-09-21 19:34:50 9174 4

转载 Halcon:二维仿射变换实例探究

二维仿射变换,顾名思义就是在二维平面内,对对象进行平移、旋转、缩放等变换的行为(当然还有其他的变换,这里仅论述这三种最常见的)。Halcon中进行仿射变换的常见步骤如下:① 通过hom_mat2d_identity算子创建一个初始化矩阵(即[1.0, 0.0, 0.0, 0.0, 1.0, 0.0]);② 在初始化矩阵的基础上,使用hom_mat2d_translate(平移)、hom_mat2d_rotate(旋转)、hom_mat2d_scale(缩放)等生成仿射变换矩阵;(这几个算子.

2020-09-21 19:28:05 837

转载 Halcon :畸变矫正与标定(2)

相机标定 1.相机标定是什么 2.怎么使用halcon进行相机内外参标定? (1)搭建硬件 1.**相机连好电脑,用相机厂家软件打开相机,检查一下相机是否正常。** 2.**接下来使用halcon连接相机** (2)开始标定 1.**生成标定板参数文件** 2.**配置标定参数** 3.**开始标定相机** **总结提取标志点失败原因 4.**得到标定参数** (3)使用标定出的数据矫正图像 1**相机畸变矫正** 2**相机坐.

2020-09-21 19:14:06 3944

转载 Halcon: 畸变矫正与标定(1)

1 halcon相机标定和图像矫正 对于相机采集的图片,会由于相机本身和透镜的影响产生形变,通常需要对相机进行标定,获取相机的内参或内外参,然后矫正其畸变。相机畸变主要分为径向畸变和切向畸变,其中径向畸变是由透镜造成的,切向畸变是由成像仪与相机透镜的不平行造成的。(更多技术分享,请关注微信公众号:善眸科技;更多技术交流请加入qq机器视觉联盟群:1020941040)。 针孔模型是理想透镜的成像模型,但是实际中相机的透镜不可能是理想的模型,透镜形状的非理想特征造成像点会沿径向发生畸变。一个像点...

2020-09-18 17:31:02 3811

原创 Halcon:Image、region、xld常用的处理

一、读取文件夹中的所有图片list_files ('C:/Users/fuping.liu/Desktop/槟榔有无头/有头', ['files','follow_links'], ImageFiles)tuple_regexp_select (ImageFiles, ['\(tif|tiff|gif|bmp|jpg|jpeg|jp2|png|pcx|pgm|ppm|pbm|xwd|ima|hobj)$','ignore_case'], ImageFiles)for Index := 0 to

2020-09-18 15:20:14 1779

转载 Halcon:区域特征:select_shape(Regions : SelectedRegions : Features, Operation, Min, Max : )

Region特征一览: 特征 英 译 备注 area Area of the object 对象的面积 row Row index of the center 中心点的行坐标 column Column index..

2020-09-18 14:10:05 1117

原创 重启唯一的窗体实例,以及调用系统重启函数失败解决办法

1、修改Program.cs内的程序启动函数static class Program { public static System.Threading.Mutex Instance; /// <summary> /// 应用程序的主入口点。 /// </summary> [STAThread] static void Main() {

2020-09-08 14:39:57 122

原创 C# 实体类几种深拷贝的方法——解决关于对象赋值,A=B,A改变,B也改变问题

几种常见的深拷贝方式1、利用反射实现public static T DeepCopyByReflection<T>(T obj){  if (obj is string || obj.GetType().IsValueType)  return obj;  object retval = Activator.CreateInstance(obj.GetType());  FieldInfo[] fields = obj.GetType().GetFields(BindingF

2020-08-05 08:40:04 1835

原创 Halocn OCR识别入门学习

一、建立OCR库dev_close_window()read_image(Image,'OCR')get_image_size(Image,Width,Hight)dev_open_window(0,0,Width,Hight,'black',Window)dev_display(Image)*字符处理rgb1_to_gray(Image,ImageGray)*鼠标画你要找的...

2020-05-06 09:43:49 304

原创 C# 图片的读取

//图片转成二进制 public byte[] GetPictureData(string imagepath) { /**/ ////根据图片文件的路径使用文件流打开,并保存为byte[] FileStream FileStream = new FileStre...

2019-10-06 11:17:19 8680

翻译 halcon模板匹配测试流程

*1、创建模板(获取要做模板区域的图像) *create_shape_model (ImageReduced, 4, 0, rad(360), rad(1), 'none', 'use_polarity', 30, 10, ModelID)*2、获取形状模型---第二步(为了显示找的的模板) *get_shape_model_contours (ShapeModel, ModelID...

2019-09-23 20:27:27 971 1

转载 相机与镜头常识

1.焦距(FocalLength)  焦距是从镜头的中心点到胶平面上所形成的清晰影像之间的距离。焦距的大小决定着视角的大小,焦距数值小,视角大,所观察的范围也大;焦距数值大,视角小,观察范围小。根据焦距能否调节,可分为定焦镜头和变焦镜头两大类。  2.光圈(Iris)  用F表示,以镜头焦距f和通光孔径D的比值来衡量。每个镜头上都标有最大F值,例如 8mm /F1.4代表最大孔径为 5...

2018-09-27 16:46:59 15961

转载 利用相机SDK采相转换至HImage

来源于http://blog.sina.com.cn/s/blog_d40acd530102xndm.htmlHalcon采相功能非常强大,基本支持各大品牌以及各个通信接口的相机,并且Halcon提供为相机厂商提供了制作Halcon相机接口库的办法,总之Halcon基本可以直接连接所有工业相机。但是Halcon连接相机采相存在两个问题:一是相机参数可调整范围有限,不如相机的SDK提供的可调...

2018-09-06 22:31:39 6945 7

原创 RichTextBox 改变每行的字体颜色

   RichTextBox 改变每行的字体颜色1、新建方法AppendTextColorful(this RichTextBox rtBox, string text, Color          color, bool addNewLine)2、调用方法AppendTextColorful(this RichTextBox rtBox, string text, Color     ...

2018-08-01 14:42:14 9808 1

转载 相机选型焦距、距离的计算

2018-08-01 11:30:59 6600

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除