- 博客(26)
- 资源 (15)
- 收藏
- 关注
原创 Android JNI 图像算法开发三部曲(模拟版本)
这篇文章主要阐述了图像算法开发人员、嵌入式软件开发人员以及安卓应用开发人员三方如何共同协作开发一个完整的Android 程序。下图是我们整个项目开发的思路: 图像算法开发人员创建工程首先在Eclipse中新建一个Android Application Project,项目如下: 在这个工程我们不需要Create activity,所以在下一步的时候把Create activity的勾去掉。
2015-11-13 10:17:20
386
原创 win7/8 64位 + vs2013 调用tesseract C++ api 进行OCR
在上文《在win7/8 64位操作系统下使用vs2013编译tesseract》中介绍了如何编译一个自己的tesseract库,下文介绍如何将tesseract整合到我们自己的C++程序中,下面是我们给出C++例子:#include <baseapi.h>#include <allheaders.h>#include <stdio.h>int main(){ tesseract::Te
2015-10-16 10:29:51
1113
原创 在win7/8 64位操作系统下使用vs2013编译tesseract
本文主要介绍如何在win7/8 64位操作系统下使用vs2013编译tesseract需要的软件首先请确认您已经安装: 1. visual studio 2013 2. Github windows下载源码在E盘建立一个名为:tesseract-build的文件夹安装好github之后,在桌面上启动Git Shell 之后在Git Shell中,我们首先进入tesseract-build文
2015-10-13 12:00:31
1163
1
原创 Windows 7/8 64位系统下使用vs2013开发OpenCV程序
在进行下面开发之前,请确保你已经阅读了这篇文章:《在Microsoft Visual Studio 中构建OpenCV应用程序环境》接着上面这篇文章,我们已经拥有了一个基本可用的OpenCV开发环境(下面是我们已经配置好的property sheet): 当然,你也可以不看上面的环境配置教程,在这里直接下载我已经配置好的property sheet,然后分别在Debug | Win32和Re
2015-10-10 16:01:22
407
翻译 在Microsoft Visual Studio 中构建OpenCV应用程序环境
本文介绍如何在visual studio 2013中构建opencv2.4.10应用程序,本文用到的操作系统为:windows 7 SP1, 在windows 7 或以上操作系统应该都适用。文章内容注意翻译至这里。另外:基于opencv3.0.0 的版本会在后续补充。我在下文描述的所有内容都基于OpenCV的C\C++接口。请确保您已经跟随这个教程(后续我会翻译这个教程,让教程更加简明),完成了O
2015-10-09 12:42:14
471
原创 python中range, xrange, arange到底是啥区别
rangerange 是一种类型(type),它是一个数字的序列(s sequence of numbers),而且是不可变的,通常用在for循环中。具体可以参考这里:http://www.nowamagic.net/academy/detail/1302443class range(stop)class range(start, stop [, step])start和step的默认是分别是0和
2015-10-08 15:10:17
735
原创 HKU 图像处理课程回忆之傅立叶变化java版(二)
在上一篇HKU 图像处理课程回忆之傅立叶变化java版(一)文章中,我们实现了一个龟速版本的二维离散傅立叶变化算法。下面我们实现一个基本版的快速傅立叶变化(Successive doubling)。正式这个算法让傅立叶变化进入了工业界,至此以后,FFT成为了无数工业应用的核心技术。证明二维离散傅立叶变化的可分离性我们需要把1个2D 离散傅立叶变化转化为2个1D的离散傅立叶变化,所以我们要证明可分离性
2015-09-29 18:02:38
404
原创 HKU 图像处理课程回忆之傅立叶变化java版(一)
这是我在HKU的图像处理课程的第一个作业,只要您看完这篇博客,相信你就能看出大陆大学和国外以及香港高校在教育理念上的区别了。傅立叶变化的基础知识(举例)我觉得这篇文章已经把傅立叶变化的内容讲得很详细了。下面只是对1D傅立叶变化给出一个简单的例子,以及给出2D离散傅立叶变化的公式以待后面内容方便参考。 The Fourier transform of a discrete function of a
2015-09-29 14:00:23
445
原创 在树莓派下使用tesseract进行OCR(光学字符识别)
安装tesseract和python绑定sudo apt-get install -y libleptonica-devsudo apt-get install -y tesseract-ocrsudo apt-get install -y tesseract-ocr-devsudo pip install pytesseract通过python接口调用tesseract# tesseract
2015-09-29 10:56:20
3815
原创 用opencv打造一个文件扫描器(二)
在上一篇文章(用opencv打造一个文件扫描器(一))中,我们实现了在已知四个点的情况下,对文件进行perspective transform的功能。这篇文章主要介绍,如何自动确定文件的四个关键点。准备工作我们接下来会用到 skimage 这个图像处理包,在写程序之前可以安装这个包: pip install -U scikit-image编写代码导入必要的包:import four_point_t
2015-09-28 11:37:08
568
原创 用opencv打造一个文件扫描器(一)
我们要实现的效果首先是检测到图像的边缘: 然后是矫正图像,并进行适当的二值化: 给我4个顶点,我就能perspective transform首先我们要实现这么一个函数,传入一张图和4个顶点,我们根据这4个顶点对图像进行perspective transformimport numpy as npimport cv2# image 是传入的图像,pts就是上图文档的4个顶点(至于这4个点是
2015-09-25 18:11:35
882
原创 Zbar树莓派二维码(QR)识别(基于图片+多核并行计算)
本文介绍如何利用python多进程编程技术来加快图像处理的速度。识别效果图下面是待识别的图(2560x1440分辨率): 下面是单进程的识别效果图,由于程序是循环识别,所以会有多个耗时统计数据,不过平均耗时稳定在980毫秒左右 下面是利用CPU多核资源进行优化后,耗时统计数据,基本稳定在650毫秒。 可以看到我们把图像切分成了3部分(分别为红绿蓝3个重叠的矩形框),每个矩形框的图像都由C
2015-09-25 14:41:05
1253
原创 Zbar树莓派二维码(QR)识别(基于图片)
要使用的工具python Image 图像包zbar条码及二维码识别库opencv 库识别效果 在树莓派终端键入的命令以及得到的识别结果: 可以看到识别结果被红色矩形框标记,QR码的内容为YGSOFT001接下来详细的描述整个工作过程。python Image图像包的安装sudo apt-get install python-imagingzbar 安装# "Install Zbar
2015-09-25 10:23:45
2381
1
原创 使用树莓派摄像头Picamera(预览和抓拍)与Opencv交互
开启和测试摄像头 在做所有关于摄像头开发工作之前,请enable树莓派的摄像头开启摄像头键入如下命令:sudo raspi-config 选择第5项:Enable Camera Enable摄像头以后,要重启树莓派测试摄像头 在确认摄像头能正常工作之后,才能进行接下来的开发工作键入如下命令:raspistill -o output.jpg你会在当前工作工作文件夹下看到一张outp
2015-09-24 11:36:18
4261
1
原创 在树莓派(raspberry pi)中安装opencv2.4.10
提示:如果您严格按照下面的语句安装,应该就可以顺利的进行您的opencv之旅了。如果有任何问题欢迎留言第一步 树莓派相关升级第二步 安装必要开发者工具第三步 安装必要的图像IO包第四步 安装GTK库第五步 继续安装必要的图像IO包快捷键Markdown及扩展表格定义列表代码块脚注数学公式UML 图离线写博客浏览器兼容第一步: 树莓派相关升级sudo apt-get up
2015-09-24 10:31:11
1166
3
原创 欢迎使用优快云-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I
2015-09-24 09:19:39
87
原创 Cross Validation
交叉验证的方法可以细分为很多种类别,在本文中主要给出了3中交叉验证的方法,他们分别为:Hold-out Method、K-fold Cross Validation和Leave-one-out Cross Validation。常见的交叉验证方法如下:1。
2014-09-15 17:32:47
362
转载 DeepLearning的一些历史渊源
本文中的内容部分源于邓侃博士的一篇博文http://blog.sina.com.cn/s/blog_46d0a3930101gs5h.html1981年诺贝尔医学奖的其中两位获得者David H. Hubel(于2013年9月22日在美国马萨诸塞州林肯镇由于肾衰竭去世,享年87岁)和Torsten N. Wiesel,他们的主要贡献是“视觉系统中视觉信息处理”。他们的研究对后续的机器视觉邻域的
2013-12-09 14:24:45
474
原创 DSP中的Write-Through和Write-Back
我们知道DSP中的Data-Cache除了具备Instruction-Cache的一些特性外,它还具备一些其他特性,即Write-Through和Write-back。所谓Write-Through就是让用户可以随时更新“源存储器”的数据。距离来说吧,比较直观。Write-Through:例如我们把外接存储器的一个缓冲数据映射到Date-Cache中,那么我们就把这个外接存储器叫做“源存储器”
2013-08-25 13:38:30
520
原创 在C++程序中使用Gnuplot实现数据可视化
Gnuplot是一个基于命令行的免费作图软件,该库可以在http://www.gnuplot.info下载到,我们知道,在Matlab下可以很方便的绘制函数的曲线,但当我们用C++开发数据分析或者图像算法时,如果想要实时绘制程序中间产生的数据就变得非常困难。网上介绍Gnuplot的使用方法大多都是Gnuplot自带的命令行工具,如下所示:当我们打开bin文件夹中的Gnuplot.e
2013-05-22 23:02:58
1364
原创 利用OpenCv的parallel_for_进行并行运算
最近在看opencv中的一些源码,很多地方都用到了并行计算的思想(注意:如果在编译时没有选择TBB选项,是没有并行计算功能的),废话不多说,上code:首先要定义一个类:template class Parallel_clipBufferValues: public cv::ParallelLoopBody{ private: type *bufferToClip
2013-05-10 22:33:48
2136
原创 LBP特征提取算法
本文的PDF版本,以及涉及到的所有文献和代码可以到下列地址下载:1、PDF版本以及文献:http://download.youkuaiyun.com/detail/ty101/53498162、原作者的MATLAB代码:http://download.youkuaiyun.com/detail/ty101/5349894LBP一种用来描述图像纹理特征的算子,该算子由芬兰奥卢大学的T.Ojala等人在1996年
2013-05-09 17:34:23
2498
原创 ID3算法的通俗解释
在说ID3算法之前,首先让我们来看下面的一张表,如下表所示为购买电脑的客户的一些相关信息:表中有14条记录,其中目标属性(buys_computer)有两种情况:yes和no。参考属性有4中情况:age、income、student、credit_rating。RIDAgeIncomeStudentCredit_rating
2013-05-06 22:57:09
560
原创 C语言之详解#ifdef等宏及妙用
这几个宏是为了进行条件编译。一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条件编译”。有时,希望当满足某条件时对一组语句进行编译,而当条件不满足时则编译另一组语句。 条件编译命令最常见的形式为: #ifdef 标识符 程序段1 #else 程序段2 #endi
2009-03-08 17:17:00
741
转载 关于#pragma的用法
#pragma #pragma 预处理指令详解 在所有的预处理指令中,#Pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。 其格式一般为: #Pr
2009-03-08 17:17:00
324
visual studio 2013 project of tesseract-ocr
2015-10-13
opencv_vs2013.rar
2015-10-10
傅立叶变化assignment1
2015-09-29
RedHat_Linux安装_oracle9i
2013-06-26
oracle11g客户端的安装
2013-06-24
LBP原作者的MATLAB代码
2013-05-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人