C#
jameshater
这个作者很懒,什么都没留下…
展开
-
C#学习笔记(一)
1、.Net平台和.Net.FrameWork框架的关系 .Net.FrameWork框架是.Net平台的一部分,它提供了一个稳定的运行环境来保证基于.Net平台开发的各种应用程序能够正常运行。 其中.Net.FrameWork框架又包含两个部分:一个是CLR(公共语言运行时),一个是.Net类库。注:C#是一种开发基于.Net平台应用的程序语言。 Java既是一种平台又...原创 2018-03-09 09:47:37 · 1090 阅读 · 1 评论 -
C# byte数组转化位Bitmap
C# byte数组转换为8bit灰度图像的问题类似的文章在网上可以看到不少,但多多少少都存在一些问题。这两天做实验室的项目用到这个功能,我从头把它整理了一遍。在看代码之前,首先解释几个问题。1、byte数组存放的是图像每个像素的灰度值,byte类型正好是从0~255,存放8bit灰度图像的时候,一个数组元素就是一个像素的灰度值。仅有这个数组还不足以恢复出原来的图像,还必须事先知道图像的长、宽值;...转载 2018-12-05 15:27:30 · 6538 阅读 · 1 评论 -
OpenCV在C#中应用—OpenCVSharp
1、什么是OpenCVSharp 之前一直是基于OpenCV开发视觉算法,但C++语言对于GUI的开发相对于C#来说确实很不方便,之前就了解到C#下使用OpenCV可以使用EmguCV,这段时间也确实是调通了,但是是通过把C++封装成动态链接库在C#中调用,这样在修改算法的过程中就会非常的不方便,封装DLL的时候也比较麻烦。在C#中除了Emgucv之外,还有一种叫做OpenCVShar...原创 2018-03-21 17:29:40 · 49510 阅读 · 27 评论 -
Emgucv环境配置
Emgucv是在.NET平台下使用OpenCV视觉库的桥梁,在使用之前需要对系统进行配置,其配置和OpenCV的配置有点不同。1、EmguCV下载下载网站:http://www.emgu.com/wiki/index.php/Main_Page该网站上有EmguCV的所有资料,包括教程。下载好之后,直接安装到电脑上,安装位置可任意。本文所配置的是EmguCV3.0.0版本。2、新建一个VS...原创 2018-03-20 15:23:17 · 1756 阅读 · 0 评论 -
C#学习笔记(六)
1、Path类 在System.IO命名空间中,是一个静态类。用来对路径信息进行操作的类。尤其当我们处理文件的时候非常有用。string str=@"C:\Users\Administrator\Desktop\1.txt";Path.GetFileName(str);//获得文件名1.txtPath.GetFileNameWithoutExtention(str);//获得没有扩展名的...原创 2018-03-20 11:52:56 · 308 阅读 · 0 评论 -
C#学习笔记(四)
1、命名空间 主要用来解决类重名问题。 如何在一个项目中引用另一个项目中的类1)、在VS解决方案栏中项目下的引用右键添加引用;2)、在要引用其他类的CS文件中使用using引用其命名空间;2、值类型和引用类型区别:1)、值类型和引用类型在内存上存储的地方不一样;2)、在传递值类型和传递引用类型的时候,传递的方式不一样,值类型的传递称为值传递,引用类型的传递称为引用传递。值类型:int、...原创 2018-03-14 09:41:07 · 302 阅读 · 0 评论 -
C#学习笔记(三)
1、C#类的基本语法[权限修饰] class 类名{ 字段; 属性; 方法;}创建类的对象使用关键字new,例如要创建Person这个类的对象,则Person p = new Person();注:结构和类的本质区别是结构是面向过程的,而类是面向对象的,结构没有面向对象的几大特性,例如继承、多态等都没有。我们把包含在类或结构中的对象或值叫做字段,字段使得结构和类可以封装数据,...原创 2018-03-13 15:57:01 · 578 阅读 · 0 评论 -
C#学习笔记(二)
1、类型转换 变量之间总共有三种转换方式:显式转换/隐式转换、Convert转换和Parse转换。 显式转换/隐式转换适用的场合:当两个变量类型兼容时,例如int和double。 Convert转换适用的场合:当两个变量类型不兼容时,例如string转换为int或double。类型转换出现的地方:当表达式两边类型不一致时;隐式转换(自动转换):当满足两个条件时会发生隐式转换(1、...原创 2018-03-10 20:42:26 · 518 阅读 · 0 评论 -
C#学习笔记(五)
1、里氏转换 里氏转换需满足的条件:1)、子类可以赋值给父类;2)、如果父类中装的是子类对象,那么可以将这个父类强转为子类对象。里氏转换经常用到,如果有一个地方需要父类作为参数,我们可以给一个子类对象。上一篇文章提到过Object是所有类的父类,Console类的WriteLine(Object param)方法就是以Object类对象作为参数,所以我们可以传入int、double、stri...原创 2018-03-16 09:52:15 · 251 阅读 · 0 评论 -
图像处理、显示中的行宽(linesize)、步长(stride)、间距(pitch)
在图像数据传输和显示的过程中有一个不常用的参数:间距。间距的名称:它有很多的别名,在使用d3d显示的时候,它叫pitch;在用ffmpeg解码的时候,它叫linesize; 在用ffmpeg转换格式的时候,它叫stride。这篇文章中统一以间距来表示。间距为什么出现:这个参数看起来似乎没什么用,因为它的值和图像的宽度一样。但是那是大多数情况下,一旦遇到它和宽度不一样的时候,如果你不了...转载 2018-12-05 21:27:07 · 9487 阅读 · 1 评论