自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一个记录自己技术成长的博客

.net,图像处理,opencv

  • 博客(21)
  • 资源 (2)
  • 收藏
  • 关注

原创 《架构整洁之道》学习[一]第22章整洁架构

最近开始看了《架构整洁之道》,对下面这个图比较有感触,就拍了上传作为记录下。这本书给我的感觉是自己原来根本不会设计程序,原来程序的设计不单是功能的实现和框架的使用,编写程序虽然不是必须要这么做,但好的程序设计一般是需要遵守一定的设计规则的。下面的这张图让我对架构整体设计有了新的认识。之前用别人的框架总是不是很明白为何那样分层,到底作者是怎样思考的。例如Entity、Service层的设计,...

2020-05-05 01:19:53 348

原创 HttpWebRequest、WebClient、HttpClient深入学习

今天学习了C#中的HttpWebRequest、WebClient、HttpClient使用及区别,简要总结:HttpWebRequest是老版本.net下常用的,较为底层且复杂,访问速度及并发也不甚理想(有机会可以写代码测试对比下)不会阻塞UI线程,通常和WebResponse一起使用,一个发送请求,一个获取数据。WebClient是更高级别的抽象,在功能上更加简单易用,细节控制上较少,...

2020-04-21 18:38:26 1934

转载 [转]C#中HttpWebRequest、WebClient、HttpClient的使用详解

HttpWebRequest:命名空间: System.Net,这是.NET创建者最初开发用于使用HTTP请求的标准类。使用HttpWebRequest可以让开发者控制请求/响应流程的各个方面,如 timeouts, cookies, headers, protocols。另一个好处是HttpWebRequest类不会阻塞UI线程。例如,当您从响应很慢的API服务器下载大文件时,您的应用程序的...

2020-04-21 15:25:40 1405

原创 202004微服务学习总结记录

近期在网上学了一些微服务的培训课程,写个笔记对自己理解的微服务知识进行记录,以期待不断进步。概念微服务片设计及理论,是分布式架构的一种。不侧重代码,主要根据各种框架和中间件来实现,主要是根据内部业务进行设计的思想。难点在于服务的拆分。和传统的单体应用不同,微服务需要根据对内部业务的理解进行设计。服务拆分主要分为横向拆分和纵向拆分。横向拆分:类似公共服务、可独立的...

2020-04-18 14:44:09 359

转载 [转]C#垃圾回收机制(GC)

GC的前世与今生 虽然本文是以.net作为目标来讲述GC,但是GC的概念并非才诞生不久。早在1958年,由鼎鼎大名的图林奖得主John McCarthy所实现的Lisp语言就已经提供了GC的功能,这是GC的第一次出现。Lisp的程序员认为内存管理太重要了,所以不能由程序员自己来管理。但后来的日子里Lisp却没有成气候,采用内存手动管理的语言占据了上风,以C为代表。出于同样的理由,不同的...

2020-04-14 22:42:26 339

转载 [转]c#静态构造函数 与 构造函数

构造函数这个概念,在我们刚开始学习编程语言的时候,就被老师一遍一遍的教着。亲,现在你还记得静态构造函数的适用场景吗?如果没有,那么我们一起来复习一下吧。静态构造函数是在构造函数方法前面添加了static关键字之后形成的,并且没有修饰符(public,private),没有参数。静态构造函数有哪些特点呢:静态构造函数没有修饰符修饰(public,private),因为静态构造函数不是我们...

2020-04-14 22:40:32 108

原创 C# 集合

数组可以保存多个兑现个,但是某些情况下无法确定到底需要保存多少个对象,由于数组的长度不可变,因此数组将不再适用。为了保存这些数目不确定的对象C#提供了一系列特殊的类,这些类可以储存任意类型的对象,并且长度可变,统称为集合集合分类:可以分为非泛型集合和泛型集合,二者均间接实现了IEnumerble接口非泛型集合:非泛型集合位于System.Collection命名空间,它可以存储多种类型的对...

2020-03-08 02:41:24 175

原创 c# 异步编程

20191123今天学了一些关于异步编程的知识点,现总结记录以下关键点:1、报告进度在异步操作过程,展示操作的进度使用IProgress<T>和Progress<T>。在async方法里传入IProgress<T>,其中T是需要报告的进度类型。注意:由于IProgress<T>.Report方法是可以移步的,意味着报告进度之前,异...

2019-11-23 19:55:54 155

转载 C#中委托、事件和回调函数的理解

在C#中我们经常会碰到事件,尤其是在WPF或者WinForm中,窗体加载、或者点击一个按钮,都会触发事件。实际上,事件是对委托的封装。如果不进行封装,让委托暴露给调用者,调用者就可以把委托变量重新引用到新的委托对象,也就删除了当前要调用的方法列表;更糟糕的是,公共的委托成员打破了封装不仅导致代码难以维护和调试,而且会导致应用程序有安全风险。下面分别说明。1、委托委托可以理解为一种协议。委托...

2019-11-18 09:30:50 255

转载 [c#基础]-BindingList

BindingList的主要特点在于,它可以在加入新的元素或者元素发生修改的时候触发相应的事件,而在基本集合类中是不具有这些功能的,而且由于在基本集合中Add方法不是Virtual方法,要想让它触发事件还真不是很方便。不过BindingList可以很好的满足你的功能。 在Windows表单编程中,使用DataGridView可以很方便与数据库查询结果绑定,但是有时候查出来的数据需要经过一...

2019-11-12 20:33:23 7874

原创 C#调用非托管DLL--[2]PInvoke 签名与非托管的目标签名不匹配

c# 调用c++非托管DLL调试报错报错信息:Invoke调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配关于C#调用系统API 提示PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配。这类问题解决方案。...

2019-11-04 13:43:51 3816

原创 C#调用非托管DLL--[2]参数传递

c++工程

2019-10-31 17:24:02 293

原创 C#调用非托管DLL--[1]基本步骤

托管DLL和非托管DLL的区别狭义解释讲,托管DLL就在Dotnet环境生成的DLL文件。非托管DLL不是在Dotnet环境生成的DLL文件。托管DLL文件,可以在Dotnet环境通过 “添加引用” 的方式,直接把托管DLL文件添加到项目中。然后通过 Using DLL命名空间,来调用相应的DLL对象 。非托管DLL文件,在Dotnet环境应用时,通过引入 using system.Run...

2019-10-31 15:24:55 2265 3

转载 [c#基础]-ICloneable

什么是浅拷贝与深拷贝?浅拷贝将对象的字段复制到新的对象副本中,同时将字段的值也复制过去,但引用类型值复制引用,而不是引用类型本身,也就是,如果源对象的引用类型的字段的值改变了,拷贝的对象的对应的引用类型的字段也会跟着变化。深拷贝将对象的字段复制到新的对象副本中,无论是值类型还是引用类型的字段,都会复制类型本身及值。但,源对象的值变化,并不会影响副本中的对应的值。浅拷...

2019-10-26 13:45:18 1955 5

原创 《深入学习c#》摘抄记录--委托相关

void和非void返回类型目前一直被认为是不兼容的。部分原因是因为系统的其他方面(特别是JIT)需要知道,在执行方法时返回值是否会留在栈上。作者注:这里我故意含糊地使用了栈这个词,以避免太多不相关的细节。更多的信息请参阅Eric Lippert的博文The void is invariant(http://mng.bz/4g58)。 委托的实质是间接完成某种操作,事实上,许多面...

2019-10-26 13:09:45 138

转载 C# 泛型约束

约束告知编译器类型参数必须具备的功能。在没有任何约束的情况下,类型参数可以是任何类型。编译器只能假定System.Object的成员,它是任何 .NET 类型的最终基类。有关详细信息,请参阅使用约束的原因。如果客户端代码尝试使用约束所不允许的类型来实例化类,则会产生编译时错误。通过使用where上下文关键字指定约束。下表列出了七种类型的约束:约束 说明 where...

2019-10-25 15:27:58 788

原创 【c#基础】-Action Func Predicate

Action、Func相同:delegate、泛型委托、最多有16个参数不同:Func有一个返回值;Action无返回值。Predicate只能传一个参数并返回一个bool类型值

2019-10-25 14:57:02 156

原创 Learning OpenCV 2-3 视频播放控制

这里的程序怎么运行都没办法调通,添加视频地址后运行报错:opencv frames 451 w 320 h 240  Couldn’t open the input file 顺着报错的信息从代码里找,原来是这里:  frames = getAVIFrames(argv[1]);  //This is a hack because on linux, getting numbe

2013-12-20 23:04:29 591

原创 Learning OpenCV 2-1 显示图像

最近打算重新系统的学习下OpenCV,打算把每一段程序都过一遍。我遇到的问题会在这里列出来,解决方式也会写在这。下面就一点一点的重头开始学习吧!显示图像:代码:#include "highgui.h"int main (int argc,char **argv){IplImage* img = cvLoadImage(argv[1]);cvN

2013-12-19 23:23:30 893

原创 开始使用Git工具进行代码管理--记在CSDN空间提交项目的开始

整理了一下去年做的一个小程序,发现自己对程序的备份全部来自于复制,副本1,副本2.一年前做的程序到现在乱糟糟的,记得师兄推荐过一款svn代码管理器,现在真的觉得自己需要管理好自己的代码了。发现CSDN在空间里提供了一个托管代码的地方,方便使用,也省得搭建服务器环境了。    好了,那就开始配置使用吧!    在空间里新建一个项目,记下地址: git@code.csdn.net:(用

2013-10-28 19:43:46 667

转载 Predator:比微软Kinect更强的视频追踪算法——来自捷克博士论文

boycott (haha):刚刚看到了这个用来演示一种新的物体跟踪的算法的视频,它是Zdenek Kalal博士论文里的一部分。Zdenek Kalal是英国萨里大学的一个捷克学生。他演示的是他的神奇的精确定位系统,这个系统几乎可以跟踪镜头里的任何物体,只要你能看见它,并把它选中。它能做很多神情的事情。在这个视频中,他演示了通过摄像机拍摄他的手指、把他的手指选做目标。系统于是就能精确的跟踪他的手

2013-10-17 22:53:35 863

jeeplus带工作流开发框架ani.zip

jeeplus开发框架ani带工作流。可完整运行通过。仅限研究学习使用。 jeeplus开发框架ani带工作流。可完整运行通过。仅限研究学习使用。

2019-09-01

人工神经网张和遗传算法实现的简单的水果识别源码

人工神经网张和遗传算法实现的简单的水果识别源码

2013-12-01

空空如也

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

TA关注的人

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