自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

UruseiBest 的技术专栏

致力于推广vb.net编程开发

  • 博客(667)
  • 资源 (4)
  • 收藏
  • 关注

原创 C# 教程 目录

17.3.2.1 Bitmap.LockBits方法和Bitmap.UnlockBits方法。17.3.2.9 像素处理与内存处理之比较。17.3.1.5 二值化(黑白)17.3.1.1 逆反(底片)17.3.1.6 自定义处理。17.3.2.8 自定义处理。17.3.2.7 二值化。17.3.1 像素处理。17.3.1.2 曝光。17.3.1.3 灰度。17.3.1.4 浮雕。17.3.2 内存处理。17.3.2.3 逆反。17.3.2.4 曝光。17.3.2.5 灰度。17.3.2.6 浮雕。

2024-02-16 12:00:37 936

原创 开发实践教程1:试卷生成系统 1 前言和目录

虽然此前VB.Net教程中已经发布过《库存管理系统》作为VB.Net教程综合开发的实例,但是《库存管理系统》使用的是Access数据库,不适合多用户环境使用。同时,本系统的代码也为毕业生设计和答辩提供了开发参考,而且本程序也具备一定商用价值。(3)数据事务操作,详见《6.12 试卷管理(FormTestPaperManager)》。2、操作Word进行文档输出,详见《6.7 试卷生成(FormTestPaper)》。(2)数据批量保存,详见《6.7 试卷生成(FormTestPaper)》。

2023-03-11 21:23:03 190

原创 《Visual Basic.Net 循序渐进》

目前教程提供了学习章节共计569节,提供了示例502个,并在不断扩充中。这是博主自己总结了多年VB开发经验后,结合实际开发编著的教程。

2020-07-07 23:47:37 1742

原创 vb.net 教程 目录

最新更新:在 vb.net教程 中更新了:vb.net 教程 5-19 拓展:制作一个QQ大家来找茬和美女找茬辅助工具 (2019-11-25 16:29:53)vb.net 教程 5-20 拓展 论坛图片批量转换 (2019-11-25 16:19:31)vb.net 教程 5-21 拓展 如何给IE浏览器截图2019年11月25日 16:58:13更进一步的vb.net学习,欢迎.........

2017-04-07 23:03:24 61481 161

原创 vb.net 教程 序

vb.net学习教程 序

2017-03-06 22:59:03 3191 13

原创 17.3.2.9 像素处理与内存处理之比较

通过第17.3.2.1节到第17.3.2.8节,相信读者对通过锁定内存来处理图像有了一定认识。与第17.3.1节相比较,可以看到代码量增加了不少,而且跟踪字节数组中数据位置时很容易把人绕晕。从图17-50可以看到,在处理一张大小为3024*4032的图片时,同样的算法,像素处理耗费的时间是内存处理时间的百倍。总之,效率是第一生产力,在处理图像时可以先使用像素处理辅助理解算法,但在正式代码中应使用内存处理。本例中使用灰度平均值的算法,分别计算像素处理和内存处理所耗费的时间。学习更多C#知识,请参看。

2024-02-17 10:41:07 687

原创 17.3.2.8 自定义处理(内存处理)

自定义图像处理,保留图像上的单一色系或者多个色系。自定义处理的算法请参看第17.3.1.6节。学习更多C#知识,请参看。

2024-02-17 10:40:53 410

原创 17.3.2.7 二值化(内存处理)

二值化的算法请参看第17.3.1.5节。学习更多C#知识,请参看。

2024-02-17 10:40:23 363

原创 17.3.2.6 浮雕(内存处理)

浮雕的算法请参看第17.3.1.4节。学习更多C#知识,请参看。

2024-02-16 13:21:41 375

原创 17.3.2.5 灰度(内存处理)

灰度的算法请参看第17.3.1.3节。学习更多C#知识,请参看。灰度算法三:指数加权法。灰度算法一:最大值法。灰度算法二:平均值法。

2024-02-16 13:17:35 472

原创 17.3.2.4 曝光(内存处理)

曝光的算法请参看第17.3.1.2节。学习更多C#知识,请参看。

2024-02-16 13:15:17 371

原创 17.3.2.3 逆反(内存处理)

先是创建了与源图像同样大小的目标图像,然后使用LockBits方法将两个图像都锁定到内存,创建一维字节数组,将内存中源图像数据拷贝到这个一维数组,处理数组,将数组数据拷贝到内存中的目标图像。最后使用UnlockBits解除源图像和目标图像的锁定。由于采用的算法和像素处理算法一致,所以生成图像相同(下同)。逆反的算法请参看第17.3.1.1节。学习更多C#知识,请参看。

2024-02-16 13:13:47 368

原创 17.3.2.2 BitmapData类

当使用Bitmap.LockBits方法后,Bitmap中的像素数据信息被锁定到内存,内存的起始位置是Scan0,当PixelFormat为Format24bppRgb时,依次按照图片第一个像素的蓝色、绿色、红色分量各一个字节,第二个像素的蓝色、绿色、红色分量各一个字节……Padding是自动补足的未使用的空间,由于Stride的大小应为4的倍数,当跨距宽度不是4的倍数时,应补足,具体的算法是。其中,PB、PG、PR、PA分别是蓝色、绿色、红色、alpha分量对应的指针位置,都指向的是一个Byte。

2024-02-16 13:11:15 829

原创 17.3.2.1 Bitmap.LockBits方法和Bitmap.UnlockBits方法

采用的数据格式会影响我们对图像数据的处理,通常情况下,常使用PixelFormat.Format24bppRgb,本书中也以此格式举例。Format32bppArgb:指定格式为每像素32位;Alpha、红色、绿色和蓝色分量各使用8位。Format24bppRgb:指定格式为每像素24位;红色、绿色和蓝色分量各使用 8 位。学习更多C#知识,请参看。

2024-02-16 13:08:00 572

原创 17.3.2 内存处理

为了将图像数据锁定到内存,从而换来更高处理效率,我们需要使用Bitmap.LockBits方法获得一个BitmapData类,使用完毕内存后使用Bitmap.UnlockBits方法解锁占用的内存。内存处理是比像素处理更高效的处理方式,但是也比像素处理理解起来更复杂。学习更多C#知识,请参看。

2024-02-16 13:06:56 372

原创 17.3.1.6 自定义处理

B=255)、黄色对应的是(R=255;如果只是按照绝对的RGB颜色值来划分,例如单纯的取红色(R=255,G=0,B=0),其实在图像中是比较少见的,而且和红色接近的颜色(R=236,G=0,B=0),肉眼所见也属于红色范畴。G > 180,并且B > 180,并且(B >= G) 或 (G - B) < 10) ,并且B - R > 40,并且G - R > 40。R > 140,并且G > 120,并且Math.Abs(G - R) < 40,并且R - B > 80,并且G - B > 80。

2024-02-16 12:53:53 353

原创 17.3.1.5 二值化(黑白)

2、第一种算法选择128作为阈值,在实际使用中显示效果并不是很好,可以采用更常见的求阈值的方法,例如大律法等。1、彩色图像灰度化后,根据灰度和阈值来确定颜色是黑色还是白色。通常情况下使用的阈值是128。学习更多C#知识,请参看。

2024-02-16 12:52:44 636

原创 17.3.1.4 浮雕

2、相邻两个像素的红绿蓝颜色分量值差的绝对值再加上一个常数。例如:从第二列像素开始,下一列的红绿蓝颜色分量值等于该行红绿蓝颜色分量减去上一列的红绿蓝颜色分量的绝对值,再加上128。如果小于0,那么等于0,如果大于255,那么等于255。1、相邻两个像素的红绿蓝颜色分量值差再加上一个常数。例如:从第二列像素开始,下一列的红绿蓝颜色分量值等于该列红绿蓝颜色分量值减去上一列的红绿蓝颜色分量,再加上128。如果小于0,那么等于0,如果大于255,那么等于255。原图像:颜色值color=(R,G,B)

2024-02-16 12:50:52 557

原创 17.3.1.3 灰度

将R,G,B分别乘上一个权重值,通常为Y=R * 0.3 + G * 0.59 + B * 0.11。2、平均值法: 使用每个像素点的 R,G,B值等于原像素点的RGB值的平均值;求出R,G,B中最大的值:Y=Max(R,G,B)求出R,G,B的平均值:Y=(R+B+G)/3。原图像:颜色值color=(R,G,B)原图像:颜色值color=(R,G,B)原图像:颜色值color=(R,G,B)新图像:color=(Y,Y,Y)新图像:color=(Y,Y,Y)新图像:color=(Y,Y,Y)

2024-02-16 12:48:07 595

原创 17.3.1.2 曝光

基本算法:先定义一个阈值,通常取得是128。原图像:颜色值color=(R,G,B)如果R<阈值,那么RNew=255-R。如果G<阈值,那么GNew=255-G。如果B<阈值,那么BNew=255-B。学习更多C#知识,请参看。

2024-02-16 12:06:52 294

原创 17.3.1.1 逆反(底片)

源图像:颜色值color=(R,G,B)学习更多C#知识,请参看。

2024-02-16 12:04:44 344

原创 17.3.1 像素处理

通常是对源图像使用GetPixel方法获得颜色,对颜色的R(红)、G(绿)、B(蓝)分量进行处理,使用颜色的。从17.3.1.1节至17.3.1.6节介绍处理图像的多种方法,涉及的代码均在【项目:code17-031】中。R、G、B分量合成新的颜色,最后使用SetPixel方法将新的颜色应用到目标图像。参数color:Color 结构,它表示要分配给指定像素的颜色。参数x:要检索的像素的 x 坐标。参数y:要检索的像素的 y 坐标。参数x:要设置的像素的 x 坐标。参数y:要设置的像素的 y 坐标。

2024-02-16 12:01:20 532

原创 图像分割-Grabcut法(C#)

GrabCut是一种基于图像分割的技术,它可以用于将图像中的前景和背景分离。在实现中,GrabCut算法通常需要使用高斯混合模型(GMM)来建立前景和背景的概率分布,以便更好的估计像素的标签。同时,还需要考虑如何处理边界处的像素,以避免边界处的像素被错误地分类。GrabCut算法在图像分割中有着广泛的应用,例如人像分割、物体抠图等。该方法没有返回值,而是直接在mask图像上进行前景分割操作,最终获得的mask包含0-3的值,含义如参数中说明。很相似,本文也可以为C#爱好者提供参考。

2024-01-04 13:37:41 539

原创 图像分割-Grabcut法

GrabCut是一种基于图像分割的技术,它可以用于将图像中的前景和背景分离。在实现中,GrabCut算法通常需要使用高斯混合模型(GMM)来建立前景和背景的概率分布,以便更好的估计像素的标签。同时,还需要考虑如何处理边界处的像素,以避免边界处的像素被错误地分类。GrabCut算法在图像分割中有着广泛的应用,例如人像分割、物体抠图等。该方法没有返回值,而是直接在mask图像上进行前景分割操作,最终获得的mask包含0-3的值,含义如参数中说明。很相似,本文也可以为C#爱好者提供参考。

2024-01-04 13:29:34 691

原创 图像分割 分水岭法 watershed(C#)

Watershed算法是一种图像处理算法,它是基于形态学的图像分割方法。在实现中,Watershed算法通常需要先对图像进行预处理,例如去除噪声、边缘检测等操作,以便更好的构建隔板。在填充山谷时,可以使用队列或其他数据结构来实现,以便管理待处理的像素。对于连通的区域,可以使用标记或者颜色来区分。该方法没有返回值,而是直接在markers图像上进行分割操作。最终输出的图像,两个区域间使用-1作为分割线。版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。

2024-01-03 13:48:48 505

原创 图像分割 分水岭法 watershed

Watershed算法是一种图像处理算法,它是基于形态学的图像分割方法。在实现中,Watershed算法通常需要先对图像进行预处理,例如去除噪声、边缘检测等操作,以便更好的构建隔板。在填充山谷时,可以使用队列或其他数据结构来实现,以便管理待处理的像素。对于连通的区域,可以使用标记或者颜色来区分。该方法没有返回值,而是直接在markers图像上进行分割操作。最终输出的图像,两个区域间使用-1作为分割线。CvInvoke.Watershed方法用于执行图像的分水岭分割操作。由于.net平台下C#和vb。

2024-01-03 13:42:01 547

原创 图像分割-漫水填充法 floodFill (C#)

FloodFill方法是一种图像处理算法,它的目的是将一个闭合的区域内的像素全部涂上同一个颜色。在实现中,通常会使用递归或队列来处理待处理列表。具体的实现方式会根据具体应用场景的需求而有所不同。CvInvoke.FloodFill方法用于执行图像的漫水填充操作,它将连通区域中的所有像素点填充为指定颜色的操作。很相似,本文也可以为C#爱好者提供参考。返回一个整数值,表示填充的像素个数。由于.net平台下C#和vb。

2024-01-02 09:36:22 823

原创 图像分割-漫水填充法 floodFill

FloodFill方法是一种图像处理算法,它的目的是将一个闭合的区域内的像素全部涂上同一个颜色。在实现中,通常会使用递归或队列来处理待处理列表。具体的实现方式会根据具体应用场景的需求而有所不同。CvInvoke.FloodFill方法用于执行图像的漫水填充操作,它将连通区域中的所有像素点填充为指定颜色的操作。很相似,本文也可以为C#爱好者提供参考。返回一个整数值,表示填充的像素个数。由于.net平台下C#和vb。

2024-01-02 09:32:46 1267

原创 深度神经网络下的风格迁移模型(C#)

团队的风格迁移模型是一种基于深度学习的图像处理技术,可以将一张图像的风格转移到另一张图像上。该模型最初由Gatys等人提出,后来被李飞飞团队进一步优化和改进。该模型在图像处理领域具有广泛的应用,例如艺术风格转换、视频风格迁移等。这个是C#版本的,这里就只放出代码。VB.Net版本请参看。很相似,本文也可以为C#爱好者提供参考。由于.net平台下C#和vb。

2023-12-24 23:05:03 767

原创 深度神经网络下的风格迁移模型

斯坦福大学李飞飞团队的风格迁移模型是一种基于深度学习的图像处理技术,可以将一张图像的风格转移到另一张图像上。该模型最初由Gatys等人提出,后来被李飞飞团队进一步优化和改进。该模型在图像处理领域具有广泛的应用,例如艺术风格转换、视频风格迁移等。

2023-11-21 08:19:37 338 2

原创 编程获取图像中的圆半径

这个网友当时提出来问题的时候,我还没有办法解决,不过经过不断学习,目前已经学习了不少相关知识,至少可以获得圆半径了,还是略微感到欣慰。说实在的,单靠VB.net很难获得相关圆形信息,为了弥补这部分知识,下定决心学习了EmguCV。之前网友咨询如何获得图像中圆形的半径,其中有两个十字作为标定,十字之间距离为100mm。即将推出EmguCV的教程,请大家还稍作等待。关于EmguCV的知识,下一步整理出来。很相似,本文也可以为C#爱好者提供参考。由于.net平台下C#和vb。

2023-09-15 13:03:02 609

原创 Excel VSTO开发11-自定义菜单项

在实际中,以上代码会存在一定问题,读者可以测试,当运行多次后会发现多出很多相同的菜单项,也就是菜单项重复被添加。以上代码运行后会在单元格右键菜单上增加一个“查看菜单”菜单项,位置在第一个。自定义菜单项可以在插件启动时候添加,即增加到。下面一句代码可以输出当前所有菜单项。2、可以将之前已经存在的菜单项删除。如果已经存在我们自定义的菜单项。[代码7] 增加自定义菜单项。单元格右键时候的弹出菜单。单元格右键时候的弹出菜单。列出当前菜单的所有菜单项。增加菜单项到菜单第一个。增加菜单项到菜单第一个。

2023-09-06 18:23:17 1578

原创 Excel VSTO开发10 -自定义任务面板

自定义任务面板(有些地方称为侧边面板)即CustomTaskPane,这个类在Microsoft.Office.Tools下面。以下将详细讲述如何实现自定义任务面板。[代码6] CustomTaskPane的创建和使用。在开发界面根据需要向用户控件窗体上增加相应内容。在ThisAddIn_Startup()中添加。“任务面板”,同时关闭“任务面板”时,调整。添加自定义任务面板,将会显示用户控件。定义一个带事件的自定义任务面板。向项目添加一个“用户控件”,被选中的状态来决定是否显示。

2023-09-06 18:23:01 1353

原创 Excel VSTO开发9 -使用Form窗口

通过向项目添加Form窗口后,可以在Form窗口上添加.Net的控件。与Robbin开发界面的工具箱相比,Form窗口可以使用的控件更多。关于Form窗口的开发,这里不再累述。

2023-09-06 18:22:44 240

原创 Excel VSTO开发8 -相关控件

在VSTO开发中,Ribbon(或称为Ribbon UI)是指Office应用程序中的那个位于顶部的带有选项卡、组和按钮的用户界面。通过自定义Ribbon控件,开发者可以在Office应用程序中添加自定义的选项卡、按钮、分组以及其他UI元素,以便用户可以访问您的自定义功能。用户点击DialogBoxLauncher图标会触发“DialogLauncherClick”事件,可以在这个事件的代码中弹出一个额外的对话框或者菜单,以提供更多的选项或设置。Gallery展示一组相关的选项或内容,以便用户选择。

2023-09-06 18:22:27 1133

原创 Excel VSTO开发7 -可视化界面开发

前面的代码都是基于插件启动或者退出时,以及Excel Application的相关事件,在用户实际操作中并不会显示相应的界面,当然也不需要显示相关界面。但是,这对于用户显然不是那么友好,而且也不利于正常的在Excel中的操作。该显示的应该使用UI显示出来,而且还有部分操作是基于UI控件的。可以看到设计区域类似Excel工具栏上的功能区,默认已经有一个Tab1(选项卡)和一个Group1(组控件)左侧[工具箱]中相比普通开发多了[Office功能区控件]。此时就可以通过控件摆放及添加相应代码进行开发了。

2023-09-06 18:22:08 1468

原创 Excel VSTO开发6 -Range对象

当获得了Range对象,就可以使用它的Value属性来获取它所包含的单元格的值,还可以使用它一些属性来设置包括字体(Font)、列宽度(ColumnWidth)、行高度(rowHeight)、背景颜色(Interior)等。Excel中最重要的一个对象是Range对象,它可以代表某一单元格、某一行、某一列、某一区域(该区域可包含一个或是若干单元格的组合)。同样,也可以理解单元格、行、列、区域都是一个Range对象。1、以下代码表示一个单元格。4、以下代码表示单元格。5、以下代码表示单元格。

2023-09-06 18:21:50 806

原创 Excel VSTO开发5 -Excel对象结构

一个Application下面有一个Workbooks,这是一个Workbook的集合,图21-2中就包含2个Workbook,分别是Northwind.xls和表格.xlsx;一个Workbook下面有一个Worksheets,这是一个Worksheet的集合,图21-2中就包括了3个Worksheet,分别是产品、雇员和客户,正在显示的是产品。Application、Workbooks、Workbook、Worksheets、Worksheet都提供了大量的属性和方法。请读者自行往上搜索相关文档。

2023-09-06 18:21:31 961

原创 Excel VSTO开发4 -其他事件

针对插件的事件主要有Startup、Shutdown这两个事件,在第2节中已经讲解。[代码4]以下代码在Excel窗口发生变化时触发;在打开工作簿时输出工作簿文件名称。但是,除了插件的事件,还有Excel本身的事件。当打开工作簿时,输出工作簿的名称。用户鼠标双击工作表任意位置之前。用户鼠标右击工作表任意位置之前。Excel窗口被取消激活时。工作表的单元格发生改变时。工作表选择区域发生改变时。Excel窗口大小变化时。Excel窗口被激活时。

2023-09-06 18:21:13 715

原创 Excel VSTO开发3 -代码调试

调试在Excel VSTO项目开发中显得与VB.Net开发其他项目有所不同,最关键的是Console.WriteLine不起作用。但是,断点、监视和Debug倒是可以用,而且Debug也不能直接用,必须把类写全。[代码3]在以下代码中,只有插件启动时候的信息能输出,插件关闭时的信息不会输出。

2023-09-06 18:20:51 154

深度神经网络下的风格迁移模型

深度神经网络下的风格迁移模型,适用于OpenCv、EmguCv。 斯坦福大学李飞飞团队的风格迁移模型是一种基于深度学习的图像处理技术,可以将一张图像的风格转移到另一张图像上。该模型最初由Gatys等人提出,后来被李飞飞团队进一步优化和改进。该模型在图像处理领域具有广泛的应用,例如艺术风格转换、视频风格迁移等。 详细代码请参看: https://blog.csdn.net/UruseiBest/article/details/134522829

2023-11-21

Excel VSTO开发相关代码

资源为 Excel VSTO开发相关代码。 关于教程本身,请查看 Excel VSTO开发-目录 : https://blog.csdn.net/UruseiBest/article/details/132717186 1 VSTO简介 2 建立Excel VSTO项目 3 代码调试 4 其他事件 5 Excel对象结构 6 Range对象 7 可视化界面开发 8 相关控件 9 使用Form窗口 10 自定义任务面板 11 自定义菜单项

2023-09-06

模拟浏览器,实现tabpage关闭按钮 代码

1、在tabpage上绘制关闭按钮 2、点击链接打开新页面。 详细请参看博文: http://t.csdn.cn/RRIQV

2022-05-03

Vb.Net 公司年会抽奖程序

公司年会抽奖程序,博文《公司年会抽奖程序》的配套程序,包含了程序中使用的图片和声音。具体请参看:https://blog.csdn.net/UruseiBest/article/details/122441214

2022-01-11

vbscript 备忘录

使用vbscript制作的网页备忘录,是博客文章 http://blog.csdn.net/UruseiBest/article/details/78024717 的内容

2017-09-19

sola染毒文件恢复工具

sola病毒感染exe、doc、jpg等文件,可以随u盘传播。 虽然可以手动恢复文件,但是如果染毒文件较多的话,恢复起来很麻烦。于是编写这个工具 需要.net framework 2.0支持!

2009-02-03

空空如也

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

TA关注的人

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