计算机图形处理的一些知识

最近在搞opencv来做一些简单的图像识别,既然涉及到图像识别,那么首先我们要把图像重新认识一下,大部分人看到一张照片可能就是单纯的一张照片,在一些做图像处理的人的眼中,可不就这么简单了。

计算机图形的分类

(1)位图(Bitmap)

也叫做点阵图,删格图象,像素图,简单的说,就是最小单位由象素构成的图,缩放会失真。构成位图的最小单位是象素,位图就是由象素阵列的排列来实现其显示效果的,每个象素有自己的颜色信息,在对位图图像进行编辑操作的时候,可操作的对象是每个象素,我们可以改变图像的色相、饱和度、明度,从而改变图像的显示效果。举个例子来说,位图图像就好比在巨大的沙盘上画好的画,当你从远处看的时候,画面细腻多彩,但是当你靠的非常近的时候,你就能看到组成画面的每粒沙子以及每个沙粒单纯的不可变化颜色

(2)矢量图(Vector)

也叫做向量图,简单的说,就是缩放不失真的图像格式。矢量图是通过多个对象的组合生成的,对其中的每一个对象的纪录方式,都是以数学函数来实现的,也就是说,矢量图实际上并不是象位图那样纪录画面上每一点的信息,而是纪录了元素形状及颜色的算法,当你打开一付矢量图的时候,软件对图形象对应的函数进行运算,将运算结果[图形的形状和颜色]显示给你看。无论显示画面是大还是小,画面上的对象对应的算法是不变的,所以,即使对画面进行倍数相当大的缩放,其显示效果仍然相同[不失真]。举例来说,矢量图就好比画在质量非常好的橡胶膜上的图,不管对橡胶膜怎样的常宽等比成倍拉伸,画面依然清晰,不管你离得多么近去看,也不会看到图形的最小单位。

两者的优缺点:

位图的好处是,色彩变化丰富,编辑上,可以改变任何形状的区域的色彩显示效果,相应的,要实现的效果越复杂,需要的象素数越多,图像文件的大小[长宽]和体积[存储空间]越大。

矢量的好处是,轮廓的形状更容易修改和控制,但是对于单独的对象,色彩上变化的实现不如位图来的方便直接。另外,支持矢量格式的应用程序也远远没有支持位图的多,很多矢量图形都需要专门设计的程序才能打开浏览和编辑。

常用的位图绘制软件有adobe photoshop、corel painter等,对应的文件格式为[.psd .tif][.rif]等,另外还有[.jpg][.gif][.png][.bmp]等。

常用的矢量绘制软件有adobe illustrator、coreldraw、freehand、flash等,对应的文件格式为[.ai .eps][.cdr][.fh][.fla/.swf]等,另外还有[.dwg][.wmf][.emf]等。

矢量图可以很容易的转化成位图,但是位图转化为矢量图却并不简单,往往需要比较复杂的运算和手工调节。

矢量和位图在应用上也是可以相互结合的,比如在矢量文件中嵌入位图实现特别的效果,再比如在三维影象中用矢量建模和位图贴图实现逼真的视觉效果等等。

这两种图形都被广泛应用到出版,印刷,互联网[如flash和svg]等各个方面,他们各有优缺点,两者各自的好处几乎是无法相互替代的,所以,长久以来,矢量跟位图在应用中一直是平分秋色。

数字图像的分类

数字图像,是二维图像用有限数字数值像素的表示。通常,像素在计算机中保存为二维整数数组的光栅图像,这些值经常用压缩格式进行传输和储存。

数字图像可以许多不同的输入设备和技术生成,例如数码相机、扫描仪、坐标测量机、seismographic profiling、airborne radar等等,也可以从任意的非图像数据合成得到,例如数学函数或者三维几何模型,三维几何模型是计算机图形学的一个主要分支。数字图像处理领域就是研究它们的变换算法。

每个图像的像素通常对应于二维空间中一个特定的'位置',并且有一个或者多个与那个点相关的采样值组成数值。根据这些采样数目及特性的不同数字图像可以划分为:

(1)二值图像:

图像中每个像素的亮度值(Intensity)仅可以取自0或1的图像,因此也称为1-bit图像。

(2)灰度图像:

也称为灰阶图像: 图像中每个像素可以由0(黑)到255(白)的亮度值(Intensity)表示。0-255之间表示不同的灰度级。

(3)彩色图像 (Color image):

彩色图像主要分为两种类型,RGB及CMYK。其中RGB的彩色图像是由三种不同颜色成分组合而成,一个为红色,一个为绿色,另一个为蓝色。而CMYK类型的图像则由四个颜色成分组成:青C、品M、黄Y、黑K。CMYK类型的图像主要用于印刷行业。

(4)假彩色图像

(5)多光谱图像(Multi-spectral) thematic

(6)立体图像:

立体图像是一物体由不同角度拍摄的一对图像,通常情况下我们可以用立体像计算出图像的深度信息。

(7)三维图像:

三维图像是由一组堆栈的二位图像组成。每一幅图像表示该物体的一个横截面。

常见的图像术语

(1)像素:

每张图片都是由色点组成的,每个色点称为一个像素。一张图片由30万个色点组成,这个图片的像素就是30W。我们常说相机是多少像素,这个像素就是说这款照相机的感器件有多少个,有100W个感光器件的相机就是100W像素的相机,有4000W个感光器件的相机就是4000W像素,以此类推。一台100W像素的相机拍摄的照片洗成5寸的照片会比洗成6寸清晰一点。

(2)图像分辨率:

图像分辨率是指每英寸图像内的像素点数。图像分辨率是有单位的,叫 像素每英寸。分辨率越高,像素的点密度越高,图像越逼真(这就是为什么做大幅的喷绘时,要求图片分辨率要高,就是为了保证每英寸的画面上拥有更多的像素点)。

(3)屏幕分辨率:

屏幕分辨率是屏幕每行的像素点数*每列的像素点数,每个屏幕有自己的分辨率。屏幕分辨率越高,所呈现的色彩越多,清晰度越高。

图像处理的一些降维手段

在图像识别领域,我们操作的基本都是位图,通常情况下,我们手机拍出来的照片我们称为彩色图像也称为:RGB图像,它既包含了颜色也包含了色彩强度(也可以成为亮度),反映到计算机里面,彩色图像是由3个维度组成:[ x,y,(R,G,B) ]其中R,G,B的每一个取值都可以是0-255之间的任意一个整数,所以我们称彩色图片是三维矩阵(matrix)= x * y * 3

在图像处理领域,通常在拿到一张彩色图片后,第一步基本都是先做灰度(grayscale),灰度图像,我们可以理解为它去掉了彩色图片中的颜色,只留下的色彩强度(也可以成为亮度) ,这样以来就变成了一个二维矩阵 = x * y * 1 组成是: [x,y,(0-255)]。

灰度是指黑白图像中点的颜色深度,范围一般从0到255,白色为255 ,黑色为0,故黑白图片也称灰度图像,在医学、图像识别领域有很广泛的用途,比如医学的X光,磁共振,CT出来的胶片都属于灰度照片。

彩色图片转灰度照片的几种方法:

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;

`

在做过灰度之后,下一步就是做二值化进一步简化色彩,整个图片只能有有黑白两种颜色,它仍然属于二维矩阵=x * y * 1 组成是: [x,y,(0 or (1 or 255))]。注意0代表黑色,1和255代表白色,灰度图片转为二值图片,非常简单就是把像素里面的亮度小于某一个阈值(通常是127)设置成0,大于127的转化为255通常用1代替。

这里看出来的基本思想就是降维,在图片降维后,它的处理复杂度变得更小,更有利于我们找图像的梯度或者特征值,当然并不是所有的图片处理都要这么做,也分场景。

总结:

本文介绍了计算机图形处理的相关基础知识,如图形的种类,数字图像的分类,处理图片的一些降维手段以及RGB图像与灰度和二值化的图像的区别,了解这些之后对于我们处理图像会有很大帮助,从而做到知其然也要知其所以然。

参考链接:

https://zh.wikipedia.org/wiki/%E6%95%B0%E5%AD%97%E5%9B%BE%E5%83%8F

https://zh.wikipedia.org/wiki/%E7%9F%A2%E9%87%8F%E5%9B%BE%E5%BD%A2

https://zh.wikipedia.org/wiki/%E4%BD%8D%E5%9B%BE

http://www.cnblogs.com/areliang/archive/2006/04/29/388769.html

https://www.quora.com/Does-grayscale-image-means-1-dimensional-image

https://www.quora.com/What-is-the-difference-between-a-binary-image-and-a-gray-scale-image

原文发布于微信公众号 - 我是攻城师(woshigcs)

原文发表时间:2018-04-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏null的专栏

简单易学的机器学习算法——极限学习机(ELM)

一、极限学习机的概念        极限学习机(Extreme Learning Machine) ELM,是由黄广斌提出来的求解单隐层神经网络的算法。 EL...

64170
来自专栏ml

双边过滤算法

     双边过滤算法作为一种改进的高斯过滤算法,在图像去噪,和均匀模糊(又称为磨皮),去锯齿效应上有不错的效果.双边过滤是采用Raised cosines函数...

408140
来自专栏和蔼的张星的图像处理专栏

暗通道去雾算法原理及实现

基本原理来源于何凯明大神的CVPR09的论文Single Image Haze Removal Using Dark Channel Prior

1.3K30
来自专栏MelonTeam专栏

OpenGL-投影和摄像机

1.OpenGL中的摄像机、视景体、近平面 OpenGL的摄像机和现实世界中的人眼很相似,都有一个三维的坐标表示位置,眼睛的朝向和视野范围,位置和眼睛朝向不同,...

876110
来自专栏Coding迪斯尼

深度学习:透过神经网络的内在灵活与柏拉图的哲学理念

15730
来自专栏技术随笔

[译] Instance Normalization: The Missing Ingredient for Fast Stylization

44780
来自专栏计算机视觉战队

AI都可以将文字轻松转成图像

夜晚是如此的安静,但是依然有很多挑灯夜战的你、他、她......无论在哪座城市,都会有忙碌的人在灯光下依然勤奋努力的工作,希望分享的这首小曲可以缓解夜间工作的疲...

81530
来自专栏SimpleAI

【DL碎片5】一只蚊子告诉你,什么是正则化(Regularization)

从【DL笔记1】到【DL笔记N】以及【DL碎片】系列,是我学习深度学习一路上的点点滴滴的记录,是从Coursera网课、各大博客、论文的学习以及自己的实践中总结...

17620
来自专栏SIGAI学习与实践平台

OCR技术简介

光学字符识别(Optical Character Recognition, OCR)是指对文本资料的图像文件进行分析识别处理,获取文字及版面信息的过程。亦即将图...

4.1K10
来自专栏机器学习、深度学习

视频中的运动特征--Learning Motion Patterns in Videos

Learning Motion Patterns in Videos CVPR2017 Torch code: http://thoth.inria...

26360

扫码关注云+社区

领取腾讯云代金券