- 博客(79)
- 收藏
- 关注
原创 Halcon read_region引起的异常
在Halcon IDE中,使用read_region()算子读取本地存储的region区域时,一直显示的都是正常的。如下所示:导出代码到编辑器Visual Studio中,读取相同的region区域时,显示结果如下:测试发现读取多次时,可能每次的读取结果都不同,导致区域被裁剪。看算子手册说明,需要在调用read_region()算子前调用set_system(‘clip_region’,‘false’)进行设置。调用后读取成功,显示如下:...
2022-04-22 19:35:29
1377
1
原创 WPF 数据对象的绑定及转换
一、WPF DataGrid数据的绑定(1)列类型为DataGridCheckBoxColumn时,可绑定一个bool型变量,实现CheckBox是否选中 <DataGridCheckBoxColumn Header="USE" Binding="{Binding IsUse}"/> private bool _isUse; public bool IsUse { get { return _isUse; }
2022-02-25 20:51:54
1040
原创 WPF DataGrid实现一键全选中功能
实现效果如下:界面层<DataGrid ItemsSource="{Binding Items1}" CanUserAddRows="False" AutoGenerateColumns="False" HeadersVisibility="All"> <DataGrid.Resources> <model:BindingProxy x:Key="DataContextProxy" Data="{Binding}" />
2021-11-29 16:00:19
2028
2
原创 INI配置文件的读写
INI文件是以键值对的形式存储的。由节、键、值组成。节[section]参数1(键=值)name1=value1参数2(键=值)name2=value2······public class INIHelper { [DllImport("kernel32")] private static extern int GetPrivateProfileString(string appName,string keyName,string defaultVal
2021-11-29 15:45:05
378
原创 NPOI操作Excel
NPOI操作Excel的基本用法文件的读入 public static void ReadExcel(string excelPath) { FileStream fs = new FileStream(excelPath,FileMode.Open, FileAccess.Read); if(excelPath.EndsWith(".xlsx")) { workbook
2021-11-27 16:00:46
489
原创 VTK学习
VTK学习渲染窗口的显示 vtkSmartPointer<vtkRenderWindow> renWin = vtkSmartPointer<vtkRenderWindow>::New(); renWin->AddRenderer(renderer); renWin->SetSize(640, 480); renWin->Render(); renWin->SetWindowName("002"); vtkS
2021-11-27 15:24:41
415
原创 Halcon倾斜字符矫正
Halcon倾斜文本矫正1.图像预处理2.字符区域定位3.计算字符区域外接旋转矩形,旋转图像1.图像预处理读入图像后,通过边缘提取,轮廓筛选,获取字符所在的区域edges_sub_pix (ImageReduced, Edges, 'canny', 9, 30, 90)select_contours_xld (Edges, SelectedContours, 'contour_length', 150, 1200, -0.5, 0.2.字符区域定位对提取的轮廓进行旋转矩形拟合,生成不同的多边
2021-08-13 19:21:11
1593
原创 圆形的生成
圆形的生成圆形的扫描转换中点画圆Bresenham画圆圆形的扫描转换在屏幕像素点阵中确定一组最佳逼近于圆的像素点,并用指定的颜色显示出来。由于圆具有对称性,在进行扫描转换时,只需迭代生成八分之一圆的最佳像素逼近点,圆的其他部分通过简单的坐标对称就可以直接得到。中点画圆void MIDPOINT_Circle(CDC *pDc,CPoint cPt ,int R,COLORREF crColor){ int x,y,d; x=0; y=R; d=5-4*R; pDc->SetPi
2021-08-07 15:44:28
604
原创 交互式绘图技术与双缓存技术
交互式绘图技术与双缓存技术交互式绘图技术双缓存技术交互式绘图技术交互式绘图技术,又称之为橡皮筋技术。能显示图形的动态变化效果,例如,随着鼠标在视图窗口的移动,能够实时动态地生成图形。绘图功能中有一个“异或”的绘图特性,即在屏幕上用异或的模式画图形,相同的位置重新画一次此图形,则会在屏幕上擦除上一次所绘制的内容。 CDC *pDC = GetDC(); pDC->SetROP2(R2_NOT); DrawLine(pDC,lTmpPoint1,lTmpPoint2,m_cDrawColor)
2021-08-07 14:58:48
180
原创 直线的生成
图形的扫描转换(图形的光栅化)实现在屏幕上显示图形,可通过寻找屏幕上的一组像素点集,并将该组像素点集用指定的颜色显示,以此来最佳逼近图形的形状的方法直线的生成比较常用的直线扫描转换算法有三种:数值微分法(DDA);中点画线算法;Bresenham算法。数值微分法的特点是增量算法,直观、易实现。但是算法中有除法运算和浮点数,不利于用硬件实现;当图形中有大量的直线时,利用数值微分法会占用较多的内存,对运算速度会有一些影响。中点画线算法在整个运算中都是整数运算,没有出现小数,因此占有的内存相对较少,也便
2021-07-31 21:09:59
236
原创 OpenCV GApi初探
作者:Parker2019链接:https://www.jianshu.com/p/8c8c08496a2c来源:简书G-API的管线(pipeline:pipeline表示在外接程序与其宿主之间交换数据的管线段的线性通信模型。从宿主端开始,管线具有以下一系列管线段:宿主、外接程序的宿主视图、宿主端适配器、协定、外接程序端适配器、外接程序视图和外接程序。)随之被创建,事实上它是通过调用cv::GMat来完成一系列的G-API数据操作。它只是声明了要去做什么操作,而并不是直接执行什么操作。到此时也还没有
2021-07-14 11:26:54
2207
5
原创 C# 并行编程概念介绍
C# 并行编程1.同步与异步(客户端)关注消息通信机制同步:主程序会等待被调用的方法按顺序执行完,才会继续执行。异步:主程序不会等待方法执行完,而是主程序调用异步方法后直接继续运行。异步方法会启动一个新线程来完成方法的计算。主要用于IO密集型计算。2.阻塞与非阻塞(服务器端)关注程序在等待调用结果(消息,返回值)时的状态阻塞:指调用结果返回之前,当前线程会被挂起。调用线程只有在得到结果之后才会返回。非阻塞:指在不能立刻得到结果之前,该调用不会阻塞当前线程。3.并行编程3.1硬件线程与软
2021-04-20 20:24:21
471
原创 C# 线程池与任务并行示例
多线程执行效率判断线程执行完成胡方法(1)CountdownEvent(2)AutoResetEvent默认情况下,程序运行时共享所有的处理器,也可指定特定的CPU运行Process.GetCurrentProcess().ProcessorAffinity = new IntPtr(1);1.线程池 ThreadPoolThreadPool 类 (System.Threading) | Microsoft Docs线程池可用于执行任务、发送工作项、处理异步 I/O、代表其他线程等待以及
2021-04-12 21:39:02
399
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人