自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 资源 (3)
  • 收藏
  • 关注

原创 ImageSource 转化为System.Drawing.Image

Bitmap是Image的派生类,直接赋值即可! /// <summary> /// ImageSource --> Bitmap /// </summary> /// <param name="imageSource"></param> /// <...

2019-10-30 15:06:34 2038 2

原创 Bitmap类

封装 GDI+ 位图,此位图由图像及其属性的像素数据组成。 Bitmap 是用于处理由像素数据定义的图像的对象。[System.Runtime.InteropServices.ComVisible(true)][System.Serializable]public sealed class Bitmap : System.Drawing.Image可以看出来,它继承于System.D...

2019-10-30 14:59:04 271 1

原创 System.Drawing.Image转化为WPF的ImageSource

主要思路:先将Image转化为Bitmap,然后将Bitmap转化为BitmapSource或者是BitmapImage对象1、写个静态方法,两种方法都可以public class ImageWork{ [DllImport("gdi32")] static extern int DeleteObject(IntPtr o); /// &...

2019-10-30 14:25:45 3690

原创 使用GDI+绘制矩形框——winform

1、创建一个 Graphics object2、使用这个Graphics object 画线,画矩形,画图片等具体代码using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System....

2019-10-30 09:33:04 1872

原创 VisualBrush画刷

VisualBrush派生于TileBrush,TileBrush可以用来重复填充目标区域, 若要使用图像进行绘制,请使用 ImageBrush。 若要通过绘图绘制,请使用 DrawingBrush。 若要通过 Visual 进行绘制,请使用 VisualBrush。 一幅图案填充到目标区域,分别有以下两步骤:1、从画刷的内容投射到一个小面片(Tile)...

2019-10-29 11:19:19 662

原创 静态联编和动态联编

将源代码中的函数调用,解释为执行特定的函数代码块,被称为函数名联编(binding)编译器在编译阶段进行联编称为静态联编,在程序运行时选择正确的虚方法的代码,称为动态联编c++可以让指向基类的引用或指针引用派生类对象,而不必进行显示的类型转换。1、如果类不用做基类,那么就不需要动态联编。同样,如果派生类不重新定义基类的任何方法,也不需要动态联编。这些情况下,使用静态联编效率更...

2019-10-29 08:45:39 178

原创 图像处理步骤

1、图像预处理,包括高斯滤波,图像去噪,图像增强等2、图像分割3、孔洞填充4、连通域标记图像的预处理为了方便计算,系统通常将获取的图片灰度化。将彩色图像转化成为灰度图像的过程就称为图像的灰度化处理。彩色图像中R、G、B三个分量的值决定了具体的像素点。一个像素点可以有上千万种颜色。而灰度图像是一种彩色图像,但是它的特点在于R、G、B三个分量具体的值是一致的。灰度图中每个像素...

2019-10-28 21:26:43 25062 2

原创 元件的编组

对于在生产线上出现的同一位置多种来料或者同一种来料焊点变化较大的情况,用户可以通过编组的方式进行处理。所谓组的概念即将这些同一个位置的可以互相替换的元件注册多标准,然后将这些标准全部编入一个小组里面。在测试过程中待测元件和有组的标准进行比对时,会自动和组里面的每一个点都进行比对,只要其中有一个能使待测点通过,这个点就是 OK 的,如果待测点和组里面所有的点比对,实测差异都大于误差范围,则这...

2019-10-28 15:05:17 142

原创 ListBox的样式

<ListBox BorderThickness="1" Style="{StaticResource CustomListBoxStyle}" ItemContainerStyle="{StaticResou...

2019-10-28 14:21:01 927

原创 构造函数与析构函数是否能为虚函数

析构函数可以是虚析构函数。因为可以用基类指针或者引用指向派生类型,如果基类的析构函数不是虚函数,那么只会调用指针类型的析构函数,导致内存泄漏...

2019-10-28 08:48:40 1278

转载 wpf拖拽图片,滚轮放大缩小

WPF提供了很多函数方便我们处理图片,例如各式各样的Transform类用来移动、缩放和旋转图片,有各式各样的Effect类来修改图片的外观。更难得的是,这些类都可以在XAML代码直接设置,而XAML为了提高代码的可维护性,又为我们提供了Resource这么好的概念来将通用的代码和设置保存在一个中心位置,其它控件可以直接引用同一个Resource就可以获取同样的设置。因此,为什么我们不能将这两个工...

2019-10-25 15:11:53 3349

原创 接雨水——单调栈的实践

给定n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。示例:输入: [0,1,0,2,1,0,1,3,2,1,2,1]输出: 6一、暴力破解法假设每一列可以存水,只要我们遍历每一列,计算存水的总和即可。现在我们根据图上的显示,计算出第1列存水0,第2列存水0,第3列存水1,第4列存水0,第5列存水1,,,如何计算当前列的水...

2019-10-24 20:35:49 319

转载 OpenCV实现人脸识别

该程序对头像很小的图片效果不是很好。VS2017+OpenCV3.5主要步骤1、读取图像2、转为灰度图3、直方图均衡化,增加对比度4、载入分类器5、检测关于脸部位置#include <opencv2/opencv.hpp>#include <cstdio>#include <cstdlib>#include <Windo...

2019-10-24 20:09:53 317

转载 背光补偿

背光补偿能提供在非常强的背景光线前面目标的理想的曝光,无论主要的目标移到中间、上下左右或者荧幕的任一位置。背光补偿也称作逆光补偿或逆光补正,它可以有效补偿摄像机在逆光环境下拍摄时画面主体黑暗的缺陷。当摄像机处于逆光环境中拍摄时,画面会出现黑色的图像,然而在安防中逆光环境是难以避免的,这个时候就需要进行背光补偿。当引入背光补偿功能时,摄像机如果检测到拍摄图像一个区域中的视频电平比较低,通过上...

2019-10-24 10:24:30 2202

转载 摄像头的白平衡(White balance )

白平衡是摄像机的一个极重要的概念。所谓白平衡,就是摄像机对白色物体的还原。当我们用肉眼观看这大千世界时,在不同的光线下,对相同的颜色的感觉基本是相同的,比如在早晨旭日初升时,我们看一个白色的物体,感到它是白的;而我们在夜晚昏暗的灯光下,看到的白色物体,感到它仍然是白的。这是由于人类从出生以后的成长过程中,人的大脑已经对不同光线下的物体的彩色还原有了适应性。但是,作为摄像机,...

2019-10-24 09:54:42 3994

原创 SURF算法原理

1、先对图像进行高斯滤波2、选用二阶标准高斯函数作为滤波器,通过特定核间的卷积计算二阶偏导数,计算出Hessian矩阵3、计算判别式的值,根据判别式取值的正负,来判断该点是不是极值点4、利用非极大值抑制初步确定的特征点5、精确定位极值点6、选取特征点的主方向7、构造surf特征点的描述算子...

2019-10-24 08:39:13 1023

原创 捕获原点

什么是捕获,即当某一种信号触发时, GTS 运动控制器能准确记录触发时刻轴的位置信息。GTS 提供四种捕获方式, Home 捕获, Index 捕获、 探针(Probe)捕获和 HSIO 捕获这里介绍Home捕获具体逻辑:1、打开运动控制器2、复位运动控制器3、加载运动配置文件4、清除轴报警和限位5、驱动器使能6、启动Home捕获7、切换到点位运动模式8...

2019-10-21 15:52:10 752

原创 Jog运动模式

在 Jog 运动模式下,各轴可以独立设置目标速度、加速度、减速度、平滑系数等运动参数,能 够独立运动或停止。轴 1 运动在 Jog 模式下,初始目标速度为 100pulse/ms。动态改变目标速度,当规划位置超过100000pulse 时,修改目标速度为 50 pulse/ms设定平滑系数能够得到平滑的速度曲线,从而使加减速过程更加平稳。平滑系数的取值范围是[0...

2019-10-21 15:32:59 9872

原创 点位运动

每一个轴在规划静止时都可以设置为点位运动。在点位运动模式下,各轴可以独立设置目标位置、目标速度、加速度、减速度、起跳速度、平滑时间等运动参数,能够独立运动或停止将第 1 轴设定为点位运动模式,并且以速度 50pulse/ms,加速度 0.25pulse/ms2,减速度0.125pulse/ms2,平滑时间为 25ms 的运动参数正向运动 50000 个脉冲。1、...

2019-10-21 14:34:46 2762 5

原创 wpf datagrid 表头居中

<DataGrid.ColumnHeaderStyle> <Style TargetType="DataGridColumnHeader"> <Setter Property="Horizonta...

2019-10-19 10:58:54 784

原创 二叉树的中序遍历

定义二叉树的结构// Definition for a binary tree node. struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) {} };一、非递归的方法1、...

2019-10-15 21:39:02 1332

原创 WPF获取屏幕分辨率以及长度的转换

相关背景:WPF的坐标单位是以1/96英寸为一个逻辑像素单位。如果将操作系统的DPI设置成实际的物理DPI,则可以做到分辨率与设备无关。下面的DipHelp类,可以实现厘米与DPI,英寸与DPI的相互转换,以及获取系统分辨率,物理分辨率.。 public static class DipHelper { /// <summary> ...

2019-10-11 15:57:50 1551

原创 wpf实现类似word文档的标尺功能

需求:实现类似word文档的标尺功能。技术背景:模板,依赖属性技术细节:1、操作模板控件 在做WPF开发的时候,我们通常因为满足不同的需求会开发一些自定义控件来满足需要,我们会自定义模板来定义控件的外观,添加命令和路由事件来给控件添加行为,那如何在模板中查找元素并关联事件处理程序或添加数据绑定表达式呢,WPF有一个专用的OnApplyTemplate()方法,在该方法中,可以使用...

2019-10-11 15:31:01 1459

原创 WPF单例程序的实现

单实例程序可以使用Mutex,但是不能激活已存在实例的主窗口,新实例也不能与已存在的实例进行通信,这里推荐使用WindowsFormsApplicationBas类。WindowsFormsApplicationBase这个类是要添加Microsoft.VisualBisic.dll引用的,public class SingleInstanceApplicationWrapper ...

2019-10-09 11:11:10 857

HalconShowTest (1) (1).zip

c#,c++,halcon联合,界面使用wpf,底层c++,halcon的库,实现一张图片的显示。未来可以继续扩展,调用halcon的函数,这是一个基本的demo

2020-06-09

WindowsFormsApp1.zip

GDI+显示图片,使用winform,实现使用鼠标拖拽,画矩形框

2019-10-30

RulerControlForWPF-master.zip

实现类似word文档的标尺功能,标尺可以缩放,有cm(厘米)或者inch(英寸)两种模式

2019-10-11

空空如也

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

TA关注的人

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