搜索到与相关的文章
编程技术

车牌、验证码识别技术

车牌、验证码识别的普通方法为:1.将图片灰度化与二值化。2.去噪,然后切割成一个一个的字符。3.提取每一个字符的特征,生成特征矢量或特征矩阵。4.分类与学习。将特征矢量或特征矩阵与样本库进行比对,挑选出相似的那类样本,将这类样本的值作为输出结果。下面借着代码,描述一下上述过程。1.图片的灰度化与二值化这样做的目的是将图片的每一个象素变成0或者255,以便以计算。同时,也可以去除部分噪音。图片的灰度化与二值化的前提是bmp图片,如果不是,则需要首先转换为bm

系统 2019-08-29 22:07:03 2188

编程技术

分析 JUnit 框架源代码

理解JUnit测试框架实现原理和设计模式本文细致地描述了JUnit的代码实现,在展示代码流程UML图的基础上,详细分析JUnit的内部实现代码的功能与机制,并在涉及相关设计模式的地方结合代码予以说明。另外,分析过程还涉及Reflection等Java语言的高级特征。概述在测试驱动的开发理念深入人心的今天,JUnit在测试开发领域的核心地位日渐稳定。不仅Eclipse将JUnit作为默认的IDE集成组件,而且基于JUnit的各种测试框架也在业内被广泛应用,并

系统 2019-08-29 22:02:30 2188

各行各业

pytesser的使用

pytesser以及其依赖插件下载地址:链接:http://pan.baidu.com/s/1i3zgpjJ密码:ueyy在学习Webdriver的过程中遇到验证码的识别问题,问了度娘知道了pytesser能用于验证码的识别,而且代码用起来比较简单,就查了好多资料整了一天终于配置好了,记录一下。首先安装vc2008外部运行库(全名不记得了)vcsetup_V9.0.30729.1.239631479.exe,不然安装PIL会提示找不到xxx.bat文件,文

系统 2019-08-12 09:27:29 2188

各行各业

ReportingService本地报表引用自定义程序集需要

问题描述:创建了类库编译成RSCustomLib.dll在服务器报表引用一点问题也没有,也能如期工作。但在本地报表引用相同的程序集则编译时报如下错误:加载代码模块时出错:“RSCustomLib,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null”。详细信息:未能加载文件或程序集“RSCustomLib,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null

系统 2019-08-12 09:27:25 2188

各行各业

用实例浅谈WCF消息队列

消息队列不同于传统的请求响应模式,它是客户端把消息发送给请求消息队列,服务可以稍后对消息进行处理并把处理结果发送给响应队列,而后客户端从响应队列读取服务处理后的消息。而且使用消息队列可以使客户端实现脱机工作。脱机应用程序必须有本地缓存数据,要采用异步通讯而且要把消息持久化,在与服务器联机后将消息发送出去。WCF是使用NetMsmqBinding来支持消息队列的,传输消息不是通过TCP或HTTP等,而是通过微软消息队列(MSMQ),这是Windows组件,可

系统 2019-08-12 09:26:53 2188

各行各业

thrift的使用介绍

一、Aboutthrift二、什么是thrift,怎么工作?三、ThriftIDL四、ThriftDemo五、Thrift协议栈以及各层的使用(java为例)六、与protocolbuffer的区别一、Aboutthriftthrift是一种可伸缩的跨语言服务的发展软件框架。它结合了功能强大的软件堆栈的代码生成引擎,以建设服务,工作效率和无缝地与C++,C#,Java,Python和PHP和Ruby结合。thrift是facebook开发的,我们现在把它作

系统 2019-08-12 09:26:45 2188

数据库相关

最新的SqlHelper 类

usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingSystem.Data;usingSystem.Data.SqlClient;usingSystem.Collections;namespaceSystemDAO{//////数据库的通用访问代码苏飞修改//////此类为抽象类,///不允许实例化,在应用时直接调用即可///publica

系统 2019-08-12 01:55:37 2188

数据库相关

『重构--改善既有代码的设计』读书笔记----Spli

继续开始我们重构手法的系列,今天介绍的是SplitTemporaryVariable---分解临时变量。在我们平常写的程序中肯定有某些临时变量被赋予了超过一个的责任。如果他们不是那种收集结果(temp=temp+QString("abc"))或者循环变量(i=i+1),然而他们却被赋值了多于一次。那么我们肯定说,这个变量被赋予了超过一个的责任,别看这是个小小问题,但这会阻扰我们阅读者的判断,我们会去揣测,这个变量到底是用来干嘛的。从而影响我们看清程序正常的

系统 2019-08-12 01:54:55 2188

数据库相关

解除用户锁定、修改用户密码

connectsys/sa@orclassysdba;解除死锁altersystemkillsession'144,69';connectsys/oracle@orclassysdba;--查看全部用户select*fromdba_users;--部分用户的状态account_status是EXPIRED&LOCKED即失效并锁定。可以先给用户解锁alteruserscottaccountunlock;--再给用户修改密码alteruserscottide

系统 2019-08-12 01:54:45 2188

数据库相关

SQL行转列

创建临时表#Resultifobject_id('tempdb..#Result')isnotnulldroptable#Resultcreatetable#Result(EmployeeNMnvarchar(50),CriterionNamenvarchar(200),EvalPointsmallint)查询结果集添加到临时表insertinto#ResultSELECTH.EmployeeNMEmployeeNM,CriterionName+'@'+E

系统 2019-08-12 01:54:02 2188