android下做图像处理
2017-11-09 16:20:15 qq_19272431 阅读数 312

参考网址 :

http://blog.csdn.net/v_JULY_v/article/details/6210124

http://blog.csdn.net/v_JULY_v/article/details/6227072 

算法目录 :

一、256色转灰度图
二、Walsh变换
三、二值化变换
四、阈值变换
五、傅立叶变换
六、离散余弦变换
数字图像处理领域的二十四个典型算法及vc实现、第二章
七、高斯平滑
八、图像平移
九、图像缩放
十、图像旋转  

一、256色转灰度图
    算法介绍(
百度百科)
    什么叫灰度图?任何颜色都有红、绿、蓝三原色组成,假如原来某点的颜色为RGB(R,G,B),那么,我们可以通过下面几种方法,将其转换为灰度:   
   1.浮点算法:Gray=R*0.3+G*0.59+B*0.11   
   2.整数方法:Gray=(R*30+G*59+B*11)/100   
  3.移位方法:Gray =(R*28+G*151+B*77)>>8;   
   4.平均值法:Gray=(R+G+B)/3;   
   5.仅取绿色:Gray=G;   
    通过上述任一种方法求得Gray后,将原来的RGB(R,G,B)中的R,G,B统一用Gray替换,形成新的颜色RGB(Gray,Gray,Gray),用它替换原来的RGB(R,G,B)就是灰度图了。

灰度分为256阶。所以,用灰度表示的图像称作灰度图。



2015-08-16 22:10:02 lichenhaod 阅读数 1606

首先下载安装Opencv,当前版本为2.4.9.

然后下载Python,需要下载与opencv2匹配的版本。

.下载numpy,仍然需要下载与python相匹配的版本,安装时直接点击默认安装就可以了。

将Opencv安装目录下opencv\build\python\2.7\x86中的cv2.pyd复制到python安装目录Lib\site-packages下。

下面就可以在python中写第一个python-opencv小程序了。

下面是一个打开笔记本摄像头的程序。

import numpy as np
import cv2
cap=cv2.VideoCapture(0)
fourcc = cv2.cv.FOURCC(*'XVID')
out = cv2.VideoWriter('output.avi',fourcc, 20.0, (640,480))
num=1
ret,frame=cap.read()
while (cap.isOpened()):
 
 cv2.waitKey(1255)
 if ret==True:
   frame=cv2.flip(frame,1)
   if num%15<8:
     frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
     frame=cv2.medianBlur(frame,3)
     ret,th1 = cv2.threshold(frame,10,25,cv2.THRESH_BINARY)
     frame = cv2.adaptiveThreshold(frame,255,cv2.ADAPTIVE_THRESH_MEAN_C,cv2.THRESH_BINARY,11,2)
     
   if num%15>7:
     frame = cv2.flip(frame,-1)
     a,b,c=frame.shape
     for i in range(0,a):
         for j in range (0,b):
            for k in range (0,c):
                frame[i,j,k]=0.3*frame[i,j,k]+30
                
   out.write(frame)
   cv2.imshow('frame',frame)
   ret,frame=cap.read()
   num=num+1;
   if cv2.waitKey(1) & 0xFF==ord('q'):
      break
  
cap.release()
out.release()
cv2.destroyAllWindows()

2017-10-16 12:27:53 jiugeshao 阅读数 4816

Emgucv (用c#调用 sharp版 opencv)中的函数,会引起内存泄漏(如下语句),所以改用Aforge实现

            Bitmap bmp = new Bitmap("D:\\4.png");
            while(true)
            {
                Image<Gray, Byte> img = new Image<Gray, Byte>(bmp);  
            }

1.官网下载

    http://www.aforgenet.com/framework/downloads.html

    下载不下来,可以到此链接下下载

    http://download.csdn.net/download/robert_cheng/572660

2.如何配置Aforge

    建立一份c# 工程,引用下载的Aforge中的dll(在子文件夹中),项目需要,我只引用了Aforge.dll, Aforge.Imaging.dll和Aforge.Math.dll

    如下图所示:

   

   程序开头引用一下:

   using AForge;

   using AForge.Imaging;

   using AForge.Imaging.Filters;

   using AForge.Imaging.Textures;

  接下来就可以使用了(具体可以参见down下来的sample例子),这边我写个sample,进行简单的二值化

           Bitmap image = new Bitmap(@"D:\new.png");
            AForge.Imaging.Image.Clone(image, PixelFormat.Format8bppIndexed); 


            Threshold threshold = new Threshold();
            threshold.ThresholdValue = threshold_value;


            Bitmap binaryimage = threshold.Apply(image);
            binaryimage.Save("D:\\gray.png");


2012-05-29 15:31:40 xc84211698 阅读数 529

转载:http://bbs.sciencenet.cn/home.php?mod=space&uid=291561&do=blog&id=376315

作图像处理方面的研究工作,最重要的两个问题:其一是要把握住国际上最前
 
沿的内容;其二是所作工作要具备很高的实用背景。解决第一个问题的办法就
 
是找出这个方向公认最牛的几个超级大拿(看看他们都在作什么)和最权威的
 
出版物(阅读上面最新的文献),解决第二个问题的办法是你最好能够找到一个
 
实际应用的项目,边做边写文章。
 
做好这几点的途径之一就是充分利用网络资源,特别是权威网站和大拿们的个人主页。下面是我收集的一些资源,希望对大家有用。(这里我要感谢SMTH AI版的alamarik和Graphics版的faintt)
 
导航栏:
 
[1]研究群体
 
[2]大拿主页
 
[3]前沿期刊
 
[4]GPL软件资源
 
[5]搜索引擎
 
一、研究群体
 
 
这是卡奈基梅隆大学的计算机视觉研究组的主页,上面提供很全的资料,从发表文章的下载到演示程序、测试图像、常用链接、相关软硬件,甚至还有一个搜索引擎。
 
 
这是一个侧重图像分析的站点,一般。但是提供一个Image Analysis环境---ZIMAGE and SZIMAGE。
 
 
康奈尔大学的计算机视觉和图像分析研究组,好像是电子和计算机工程系的。侧重医学方面的研究,但是在上面有相当不错资源,关键是它正在建设中,能够跟踪一些信息。
 
 
有一个很有意思的项目:DID(文档图像解码)。
 
 
斯坦福大学计算机系主页,自己找吧:(
 
 
主要研究:Brain Extraction Tool,Nonlinear noise reduction,Linear Image Registration,
 
Automated Segmentation,Structural brain change analysis,motion correction,etc.
 
 
这是密歇根州立大学计算机和电子工程系的模式识别--图像处理研究组,它的FTP上有许多的文章(NEW)。
 
 
德国的一个数字图像处理研究小组,在其上面能找到一些不错的链接资源。
 
 
CVIP(used to be CVCC for Computer Vision and Cluster Computing) is a research group focusing on cluster-based computer vision within the Spiral Architecture.
 
 
The mission of the Center for Image Analysis is to foster multi-disciplinary research in image, multimedia and related technologies by establishing links
 
between academic institutes, industry and government agencies, and to transfer key technologies to
 
help industry build next
 
generation commercial and military imaging and multimedia systems.
 
 
可以通过它来搜索全世界各地的知名的计算机视觉研究组(CV Groups),极力推荐。
 
二、图像处理GPL库
 
 
Cppima 是一个图像处理的C++函数库。这里有一个较全面介绍它的库函数的文档,当然你也可以下载压缩的GZIP包,里面包含TexInfo格式的文档。
 
 
Welcome to the IRAF Homepage! IRAF is the Image Reduction and Analysis Facility, a general purpose software
 
system for the reduction and analysis of astronomical data.
 
 
一个非常不错的Unix系统的图像处理工具,看看它的截图。你可以在此基础上构建自己的专用图像处理工具包。
 
 
这是GPL软件集散地,到这里找你想要得到的IP库吧。
 
三、搜索资源
 
当然这里基本的搜索引擎还是必须要依靠的,比如Google等,可以到我常用的链接看看。下面的链接可能会节省你一些时间:
 
 
 
四、大拿网页
 
 
这位可是MIT人工智能实验室的BILL FREEMAN。大名鼎鼎!专长是:理解--贝叶斯模型。
 
 
MERL(Mitsubishi Electric Research Laboratory)中的擅长“Style Machine”高手。
 
 
CV界极有声望的A.Blake 1977年毕业于剑桥大学三一学院并或数学与电子科学学士学位。之后在MIT,Edinburgh,Oxford先后组建过研究小组并成为Oxford的教授,直到1999年进入微软剑桥研究中心。主要工作领域是计算机视觉。
 
 
这位牛人好像正在学习汉语,并且搜集了诸如“两只老虎(Two Tigers)”的歌曲,嘿嘿:)
 
他的主页上面还有几个牛:Shumeet Baluja, Takeo Kanade。他们的Face Detection作的绝对是世界一流。他毕业于卡奈基梅隆大学的计算机科学系,兴趣是计算机视觉。
 
 
这位老牛在1963年就获得了MIT的博士学位!他领导的Image Lab比较出名的是指纹识别。
 
--------------------------------------------------------------------------------
 
下面这些是我搜集的牛群(大部分是如日中天的Ph.D们),可以学习的是他们的Study Ways!
 
Finn Lindgren(Sweden):Statistical image analysis http://www.maths.lth.se/matstat/staff/finn/
 
Pavel Paclik(Prague):statistical pattern recognition http://www.ph.tn.tudelft.nl/~pavel/
 
Dr. Mark Burge:machine learning and graph theory http://cs.armstrong.edu/burge/
 
yalin Wang:Document Image Analysis http://students.washington.edu/~ylwang/
 
Geir Storvik: Image analysis http://www.math.uio.no/~geirs/
 
 
Joakim Lindblad:Digital Image Cytometry http://www.cb.uu.se/~joakim/index_eng.html
 
 
Sporring:scale-space techniques http://www.lab3d.odont.ku.dk/~sporring/
 
Mark Jenkinson:Reduction of MR Artefacts http://www.fmrib.ox.ac.uk/~mark/
 
Justin K. Romberg:digital signal processing http://www-dsp.rice.edu/~jrom/
 
Fauqueur:Image retrieval by regions of interest http://www-rocq.inria.fr/~fauqueur/
 
James J. Nolan:Computer Vision http://cs.gmu.edu/~jnolan/
 
Daniel X. Pape:Information http://www.bucho.org/~dpape/
 
Drew Pilant:remote sensing technology http://www.geo.mtu.edu/~anpilant/index.html
 
五、前沿期刊(TOP10)
 
这里的期刊大部分都可以通过上面的大拿们的主页间接找到,在这列出主要是为了节省直接想找期刊投稿的兄弟的时间:)
 
 
 
 
 
神经网络
 
Neural Networks Tutorial Review
 
 
 
 
Image Compression with Neural Networks
 
 
 
Backpropagator's Review
 
 
 
Bibliographies on Neural Networks
 
 
 
Intelligent Motion Control with an Artificial Cerebellum
 
 
 
Kernel Machines
 
 
 
Some Neural Networks Research Organizations
 
 
 
 
Neural Network Modeling in Vision Research
 
 
 
Neural Networks and Machine Learning
 
 
 
Neural Application Software
 
 
 
Neural Network Toolbox for MATLAB
 
 
 
Netlab Software
 
 
 
Kunama Systems Limited
 
 
Computer Vision
 
Computer Vision Homepage, Carnegie Mellon University
 
 
Annotated Computer Vision Bibliography
 
 
 
Lawrence Berkeley National Lab Computer Vision and Robotics Applications
 
 
CVonline by University of Edinburgh
 
The Evolving, Distributed, Non-Proprietary, On-Line Compendium of Computer Vision, www.dai.ed.ac.uk/CVonline
 
 
Vision Systems Courseware
 
 
Research Activities in Computer Vision
 
 
Vision Systems Acronyms
 
 
Dictionary of Terms in Human and Animal Vision
 
 
Metrology based on Computer Vision
 
 
Digital Photography
 
Digital Photography, Scanning, and Image Processing
 
 
Educational Resources, Universities
 
Center for Image Processing in Education
 
 
Library of Congress Call Numbers Related to Imaging Science by Rochester Institute of Technology
 
 
Mathematical Experiences through Image Processing, University of Washington
 
 
Vismod Tech Reports and Publications, MIT
 
 
Vision Lab PhD dissertation list, University of Antwerp
 
 
INRIA (France) Research Projects: Human-Computer Interaction, Image Processing, Data Management, Knowledge Systems
 
 
Image Processing Resources
 
 
Publications of Carsten Steger
 
 
FAQs
 
comp.dsp FAQ
 
 
Robotics FAQ
 
 
Where's the sci.image.processing FAQ?
 
 
comp.graphics.algorithms FAQ, Section 3, 2D Image/Pixel Computations
 
 
Astronomical Image Processing System FAQ
 
 
 
 
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/chenhu_doc/archive/2007/09/04/1772487.aspx


2012-09-13 11:09:26 starstarstone 阅读数 761
       最近在做一件比较 evil 的事情——验证码识别,以此来学习一些新的技能。因为我是初学,对图像处理方面就不太了解了,欲要利吾事,必先利吾器,既然只是做一下实验,那用 Python 来作原型开发再好不过了。在 Python 中,比较常用的图像处理库是 PIL(Python Image Library),当前版本是 1.1.6 ,用起来非常方便。大家可以在 http://www.pythonware.com/products/pil/index.htm 下载和学习。
       在这里,我主要是介绍一下做图像识别时可能会用到的一些 PIL 提供的功能,比如图像增强、还有滤波之类的。最后给出使用 Python 做图像处理与识别的优势与劣势。
基本图像处理
       使用 PIL 之前需要 import Image 模块:
import Image
       然后你就可以使用Image.open(‘xx.bmp’) 来打开一个位图文件进行处理了。打开文件你不用担心格式,也不用了解格式,无论什么格式,都只要把文件名丢给 Image.open 就可以了。真所谓 bmp、jpg、png、gif……,一个都不能少。
img = Image.open(‘origin.png’)    # 得到一个图像的实例对象 img
1原图
       图像处理中,最基本的就是色彩空间的转换。一般而言,我们的图像都是 RGB 色彩空间的,但在图像识别当中,我们可能需要转换图像到灰度图、二值图等不同的色彩空间。 PIL 在这方面也提供了极完备的支持,我们可以:
new_img = img.convert(‘L’)
把 img 转换为 256 级灰度图像, convert() 是图像实例对象的一个方法,接受一个 mode 参数,用以指定一种色彩模式,mode 的取值可以是如下几种:
· 1 (1-bit pixels, black and white, stored with one pixel per byte)
· L (8-bit pixels, black and white)
· P (8-bit pixels, mapped to any other mode using a colour palette)
· RGB (3x8-bit pixels, true colour)
· RGBA (4x8-bit pixels, true colour with transparency mask)
· CMYK (4x8-bit pixels, colour separation)
· YCbCr (3x8-bit pixels, colour video format)
· I (32-bit signed integer pixels)
· F (32-bit floating point pixels)
怎么样,够丰富吧?其实如此之处,PIL 还有限制地支持以下几种比较少见的色彩模式:LA (L with alpha), RGBX (true colour with padding) and RGBa (true colour with premultiplied alpha)。
下面看一下 mode 为 ‘1’、’L’、’P’时转换出来的图像:
2 mode = '1'
3 mode = 'L'
4 mode = 'P'
convert() 函数也接受另一个隐含参数 matrix,转换矩阵 matrix 是一个长度为4 或者16 tuple。下例是一个转换 RGB 空间到 CIE XYZ 空间的例子:
    rgb2xyz = (
        0.412453, 0.357580, 0.180423, 0,
        0.212671, 0.715160, 0.072169, 0,
        0.019334, 0.119193, 0.950227, 0 )
    out = im.convert("RGB", rgb2xyz)
       除了完备的色彩空间转换能力外, PIL 还提供了resize()、rotate()等函数以获得改变大小,旋转图片等几何变换能力,在图像识别方面,图像实例提供了一个 histogram() 方法来计算直方图,非常方便实用。
图像增强
       图像增强通常用以图像识别之前的预处理,适当的图像增强能够使得识别过程达到事半功倍的效果。 PIL 在这方面提供了一个名为 ImageEnhance 的模块,提供了几种常见的图像增强方案:
import ImageEnhance
enhancer = ImageEnhance.Sharpness(image)
for i in range(8):
    factor = i / 4.0
    enhancer.enhance(factor).show("Sharpness %f" % factor)
上面的代码即是一个典型的使用 ImageEnhance 模块的例子。 Sharpness 是 ImageEnhance 模块的一个类,用以锐化图片。这一模块主要包含如下几个类:Color、Brightness、Contrast和Sharpness。它们都有一个共同的接口 .enhance(factor) ,接受一个浮点参数 factor,标示增强的比例。下面看看这四个类在不同的 factor 下的效果
5 使用Color 进行色彩增强,factor 取值 [0, 4],步进 0.5
6 用 Birghtness 增强亮度,factor取值[0,4],步进0.5
7用 Contrast 增强对比度, factor 取值 [0,4],步进0.5
8用 Sharpness 锐化图像,factor取值 [0,4],步进0.5
图像 Filter
       PIL 在 Filter 方面的支持是非常完备的,除常见的模糊、浮雕、轮廓、边缘增强和平滑,还有中值滤波、ModeFilter等,简直方便到可以做自己做一个Photoshop。这些 Filter 都放置在 ImageFilter 模块中,ImageFilter主要包括两部分内容,一是内置的 Filter,如 BLUR、DETAIL等,另一部分是 Filter 函数,可以指定不同的参数获得不同的效果。示例如下:
import ImageFilter
im1 = im.filter(ImageFilter.BLUR)
im2 = im.filter(ImageFilter.MinFilter(3))
im3 = im.filter(ImageFilter.MinFilter()) # same as MinFilter(3)
可以看到 ImageFilter 模块的使用非常简单,每一个 Filter 都只需要一行代码就可调用,开发效率非常高。
 
9使用 BLUR
10使用 CONTOUR
11使用 DETAIL
12使用 EMBOSS
13使用 EDGE_ENHANCE
14使用 EDGE_ENHANCE_MORE
15使用 FIND_EDGES
16使用 SHARPEN
17使用 SMOOTH
18使用 SMOOTH_MORE
       以上是几种内置的 Filter 的效果图,除此之外, ImageFilter 还提供了一些 Filter 函数,下面我们来看看这些可以通过参数改变行为的 Filter 的效果:
19使用 Kernel(),参数:size = (3, 3), kernel = (0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5)
20使用 MaxFilter,默认参数
21使用 MinFilter,默认参数
22使用 MedianFilter,默认参数
23使用 ModeFilter,参数 size = 3
24使用 RankFilter,参数 size = 3, rank = 3
小结
       到此,对 PIL 的介绍就告一段落了。总的来说,对于图像处理和识别,PIL 内建了强大的支持,从各种增强算法到 Filter ,都让人无法怀疑使用 Python 的可行性。 Python唯一的劣势在于执行时间过慢,特别是当实现一些计算量大的算法时候,需要极强的耐心。我曾用 Hough Transform(霍夫变换)来查找图像中的直线,纯 Python 的实现处理一个 340 * 100 的图片也要花去数秒时间(P4 3.0G + 1G memory)。但使用 PIL 无需关注图像格式、内建的图像增强算法和 Filter 算法,这些优点使 Python 适合用于构造原型和进行实验,在这两方面Python 比 matlab 更加方便。商业的图像识别产品开发,可以考虑已经被 boost accepted的来自 adobe 的开源 C++ 库 gil,可以兼顾执行性能和开发效率。



本文转自:http://blog.csdn.net/lanphaday/article/details/1852726

做图像处理的应该了解的

阅读数 532

作图像处理方面的研究工作,最重要的两个问题:其一是要把握住国际上最前 沿的内容;其二是所作工作要具备很高的实用背景。解决第一个问题的办法就 是找出这个方向公认最牛的几个超级大拿(看看他们都在作什么)和最权威的 出版物(阅读上面最新的文献),解决第二个问题的办法是你最好能够找到一个 实际应用的项目,边做边写文章。 做好这几点的途径之一就是充分利用网络资源,特别

博文 来自: lxy198933

做图像处理的必备图库

阅读数 13

原文地址:做数字图像处理必备的图库作者:saiyed一直都很忙,所以技术这方面的东西根本没写过。因为要贴不少公式,似乎不太方便,就兴趣缺缺了。自己在做实验室工作的时候,为找免费的图库还是花了不少时间的。其实图库有很多,最著名的莫过于coral图库了,但这学要钱。虽然实验室项目经费多的有个几千万,少的也有几十万,似乎拿钱去买个图库还是足足有余的。不过老板们总是不愿意,总是要求去找免费的。我们这些...

博文 来自: weixin_43740956

用Python做图像处理

阅读数 387

用Python做图像处理 用Python做图像处理       最近在做一件比较evil的事情——验证码识别,以此来学习一些新的技能。因为我是初学,对图像处理方面就不太了解了,欲要利吾事,必先利吾器,既然只是做一下实验,那用Python来作原型开发再好不过了。在Python中,比较常用的图像处理库是PIL(PythonImageLibrary),当前版本是1.1.6...

博文 来自: qq_36178899

用Python做图像处理

阅读数 25

用Python做图像处理

博文 来自: qq_44925249

教你用Python做图像处理

阅读数 6279

质量、速度、廉价,选择其中两个提到图像处理第一个想到的库就是PIL,全称PythonImagingLibraryPython,图像处理类库,它提供了大量的图像操作,比如图像缩放,裁剪,贴图,模糊等等,很多时候它需要配合numpy库一起使用1.open()你可以使用Image.open打开一个图像文件,它会返回PIL图像对象image=Image.open(image...

博文 来自: qq_37482202
没有更多推荐了,返回首页