Presentation is loading. Please wait.

Presentation is loading. Please wait.

多媒体技术基础 数字图像 Digital Image.

Similar presentations


Presentation on theme: "多媒体技术基础 数字图像 Digital Image."— Presentation transcript:

1 多媒体技术基础 数字图像 Digital Image

2 内容 图像的基本属性 图像的分类 图像文件 数据库中图像字段的存取 立体图像

3 背景 人们获取信息的70%来自视觉系统 多媒体中最重要的一种媒体元素 获取简单、方便

4 图像的数字化—采样 25*20网格中每一个格子进行颜色平均化采样 自然图像 以25*20的网格采样 25像素*20像素的图像

5 图像的数字化—采样 100*80网格中每一个格子进行颜色平均化采样 自然图像 以100*80的网格采样 100像素*80像素的图像

6 图像的数字化—量化 用有限数量的值对可能的无限多数量进行编码。 4色 8色

7 图像的基本属性1--分辨率 组成一幅图像的像素(pixel) 密度的度量方法。对同样大小的一幅图,如果组成该图的图像像素数目越多,则说明图像的分辨率越高,看起来就越逼真。相反,图像显得越粗糙。 在用扫描仪扫描彩色图像时,通常要指定图像的分辨率,用每英寸多少点(dots per inch,DPI)表示。如果用300 DPI来扫描一幅8″×10″的彩色图像,就得到一幅2400×3000个像素的图像。 数码相机中可以设置拍摄照片的分辨率。佳能5D Mark III L(大):约2210万像素(5760×3840) M(中):约980万像素(3840×2560) S1(小1):约550万像素(2880×1920) S2(小2):约250万像素(1920×1280) S3(小3):约35万像素(720×480) RAW:约2210万像素(5760×3840) M-RAW:约1050万像素(3960×2640) S-RAW:约550万像素(2880×1920)

8 显示分辨率 显示分辨率确定显示图像的区域大小。
如果显示屏的分辨率为640×480,那么一幅320×240的图像只占显示屏的1/4;相反,2400×3000的图像在这个显示屏上就不能显示一个完整的画面。

9 dpi 每英寸显示的像素数 显示分辨率 清晰度 绝对清晰度 ● Resolution (分辨率)单位 视觉效果
21 dpi dpi dpi

10 打印分辨率 Photoshop ->图像->图像大小-> 选项 打印幅面缩小3倍 打印幅面相应变化 分辨率调整 像素不变
分辨率变大3倍

11 常见分辨率 ● 平板扫描仪:1200 dpi ● 显示器:96 dpi ● 显示用图片:96 dpi ● 动画、视频:96 dpi
● 印刷图片 普通:300dpi 高精度:600 dpi ● 底片扫描仪 4800 dpi ● 激光打印机:600~1200 dpi ● 喷墨打印机:720~2880 dpi

12 图像的基本属性2--像素深度 像素深度(bits per pixel, bpp):存储每个像素所用的位数。
像素深度决定彩色图像每个像素可能有的颜色数,或者确定灰度图像每个像素可能有的灰度级数。 表示一个像素的位数越多,它能表达的颜色数目就越多,其深度就越深。在这个意义上,往往把像素深度说成是图像深度。 例如:一幅彩色图像的每个像素用R,G,B三个分量表示,若每个分量用8位,那么一个像素共用24位表示,像素深度为24,每个像素可以是224= 种颜色中的一种。

13 Bitmapped Image Computer combines red, blue and green (RGB) colors
Each pixel is associated with bit depth. Bit depth determines the number of possible color. 1-bit 2 colors 4-bit 16 colors 8-bit 256 colors 24-bit 16,777,216 colors (16 million)

14 测试 一幅彩色图像,大小是 8″x 6″, 分辨率是300 DPI, 每个像素可能有256种颜色,如果不压缩,这幅图像占用多少存储空间?
Solution: 8x6x300x300x8/8 = Bytes

15 像素深度与颜色 图像的颜色需用三维空间来表示。 颜色的空间表示法不是惟一的,每个像素点的像素深度的分配还与图像所用的颜色空间有关。
以最常用的RGB颜色空间为例,图像深度与颜色的映射关系主要有真彩色、伪彩色和直接色。

16 真彩色 真彩色(True Color):指在组成一幅彩色图像的每个像素值中,有R,G,B三个基色分量,每个基色分量直接决定显示设备的基色强度。 如果用RGB 8:8:8方式表示一幅彩色图像,就是R,G,B都用8位来表示,每个基色分量占一个字节,可生成的颜色数就是224= 种。这种图像也称为全彩色(full color)图像。

17 真彩色 用3个字节表示的真彩色图像所需要的存储空间很大,而人的眼睛是很难分辨出这么多种颜色的。在很多情况下,并不需要这么高的颜色数
在许多场合往往用RGB 5:5:5来表示,每个彩色分量占5个位,再加1位显示属性控制位,共2个字节,生成的真颜色数目为215 = 32K。

18 如何节省空间 一幅图像中所有可能的颜色,假设为n种,通常 n<< 224,为每种颜色分配一个代码,每个代码对应一个RGB值,每种颜色的bit数为 log2n 例如:图像最多有1024种色,那么用于表示一种颜色的bit数为 log21024  =10

19 伪彩色 Pseudo color 彩色查找表CLUT
每个像素的颜色不是由每个基色分量的数值直接决定,而是把像素值当作彩色查找表CLUT(color look-up table)的表项入口地址,去查找一个显示图像时使用的R,G,B强度值。 彩色查找表CLUT 也称为:colormap(颜色图), palette(调色板) 是一个事先做好的表,表项入口地址称为索引号,根据该索引号可查找出包含实际R、G、B的强度值。 例如16种颜色的查找表,0号索引对应黑色,... ,15号索引对应白色。

20

21 Windows中16色标准VGA调色板 绿色 伪彩色值=10 真彩色值=0 255 0 代码 R G B 颜色名称 效果 黑(Black)
黑(Black) 1 128 深蓝(Navy) 2 深绿(Dark Green) 3 深青(Dark Cyan) 4 深红(Maroon) 5 紫(Purple) 6 橄榄绿(Olive) 7 192 灰白(Light gray) 8 深灰(Dark gray) 9 255 蓝( blue) 10 绿( green) 11 青(cyan) 12 红( red) 13 品红( magenta) 14 黄(Yellow) 15 白(white) 绿色 伪彩色值=10 真彩色值=

22 调色板的选取 标准调色板是在224色谱中按色调均匀地选取16种或256种颜色。
一般应用中,有的图像往往偏向于某一种或几种色调,此时如果采用标准调色板,则颜色失真较多。 因此,同一幅图像,采用不同的调色板显示可能会出现不同的颜色效果

23 例子 (调色板色彩数为256) 调色板与图像原有颜色匹配,故颜色偏差很小 调色板与原图不匹配,图像出现色偏 真彩色显示,无需调色板  

24 图像的分类 按生成方法 按颜色 矢量图(vector based image,一般称为图形) 点位图(bitmapped image)
灰度图 彩色图

25 图形与图像 ●图像:直接量化的原始信号形式 ●图形:运算形成的抽象化产物 ● 图形由具有方向和长度的 矢量表示 ● 用于分析运算结果,简单
图形表示 ● 图像的最小单位是像素 ● 用于表现自然影像

26 矢量图与点位图 矢量图 点位图

27 矢量图 用一系列计算机指令来表示一幅图,如画点、画线、画曲线、画圆、画矩形等。
这种方法实际上是数学方法来描述一幅图,然后变成许多数学表达式,再编程,用语言来表达。 在计算显示图时,往往能看到画图的过程。绘制和显示这种图的软件通常称为绘图程序(draw programs)。 Adobe Illustrator, Adobe Flash, CoreDraw都是矢量图形应用程序

28 矢量图特点 矢量图的优点 (1)缩放、旋转、移动时图像不会失真,与分辨率无关。 (2)存储和传输时数据量较小。 矢量图的缺点
(1)图像显示时花费时间比较长。 (2)真实世界的彩色图像难以转化为矢量图。

29 矢量图的放大 容量 编辑处理过程 应用 清晰度不变 矢量图放大

30 点位图 把一幅彩色图分成许多像素,每个像素用若干二进制位来指定该像素的颜色、亮度。
一幅图由许多描述每个像素的数据组成,这些数据通常称为图像数据,存储到图像文件。

31 点位图特点 点位图的优点是: (1)显示速度快。 (2)真实世界的图像可以通过扫描仪、数码相机、摄像机等设备方便地获取 点位图的缺点是:
(1)存储和传输时数据量比较大。 (2)缩放、旋转时算法复杂且容易失真。

32 图像显示出现马赛克

33 影响文件大小的因素 点位图 矢量图 矢量图侧重于绘制、创造; 点位图偏重于获取、复制。 矢量图----点位图 (光栅技术)
分辨率越高,组成一幅图的像素越多,则图像文件越大。 像素深度越大,表达单个像素颜色和亮度的位数越多,图像文件就越大。 矢量图 文件的大小则主要取决图形的复杂程度。 矢量图侧重于绘制、创造; 点位图偏重于获取、复制。 矢量图----点位图 (光栅技术) 点位图----矢量图 (跟踪技术)

34 Bitmapped vs Vector images
Vector image require plug-ins,easily be edited. Each element of the image retain its identity and can be edited as an object because the position and attributes of each object are stored in the image model. Special effect can easily be applied on bitmapped image (distortion, blurring). To apply the same effect, vector image need to be transformed to bitmapped first.

35 考古绘图

36 灰度图与彩色图 单色图(monochrome image):只有黑白两种颜色的图像。每个像素值用1位存储,值只有“0”或“1” 。
灰度图(gray-scale image):按照灰度等级的数目来划分。如果每个像素的像素值用一个字节表示,灰度值级数就等于256级,每个像素可以是0~255之间的任何一个值。 彩色图(color image):每个像素具有颜色。

37 标准单色图 标准灰度图 彩色图

38 灰度图 256 levels 16 levels 2 levels 1 bit (2色) 5 bit (32色) 4 bit (16色)
(8色) 2 bit (4色)

39 黑白 vs 灰度图象 Black and white image Gray scale image

40 彩色图象的表示 R component G component B component

41 Dithering When an image is printed, the basic strategy of dithering is used, which trades intensity resolution for spatial resolution to provide ability to print multi-level images on 2-level (1-bit) printers. Dithering is used to calculate patterns of dots such that values from 0 to 255 correspond to patterns that are more and more filled at darker pixel values, for printing on a 1-bit printer.

42 The main strategy is to replace a pixel value by a larger pattern, say 2 x 2 or 4 x 4, such that the number of printed dots approximates the varying-sized disks of ink used in analog, in halftone printing (e.g., for newspaper photos). Half-tone printing is an analog process that uses smaller or larger filled circles of black ink to represent shading, for newspaper printing. For example, if we use a 2 X 2 dither matrix we can first remap image values in into the new range 0..4 by (integer) dividing by 256/5. Then, e.g., if the pixel value is 0 we print nothing, in a 2 X 2 area of printer output. But if the pixel value is 4 we print all four dots. The rule is: If the intensity is > the dither matrix entry, print an on dot at that entry location: replace each pixel by an n x n matrix of dots. Note that the image size may be much larger, for a dithered image, since replacing each pixel by a 4 x 4 array of dots, say, makes an image 16 times as large.

43 A clever trick can get around this problem
A clever trick can get around this problem. Suppose we wish to use a larger, 4 x 4 dither matrix, such as An ordered dither consists of turning on the printer output bit for a pixel if the intensity level is greater than the particular matrix element just at that pixel position.

44 (a) (b) (c) Fig. 3.4: Dithering of grayscale images. (a): 8-bit grey image “lenagray.bmp”. (b): Dithered version of the image. (c): Detail of dithered version.

45 An algorithm for ordered dither, with n x n dither matrix
BEGIN for x = 0 to xmax // columns for y = 0 to ymax // rows i = x mod n j = y mod n // I(x, y) is the input, O(x, y) is the output, D is the dither matrix. if I(x, y) > D(i, j) O(x, y) = 1; else O(x, y) = 0; END

46 常用的图像文件格式 名称 性质 方法 用途 公司/组织 BMP 无损 RLC Windows MS
名称 性质 方法 用途 公司/组织 BMP 无损 RLC Windows MS TIFF 无损 RLC,LZW desktop Aldus,MS publishing GIF 无损 LZW Internet CompuServe PNG 无损 LZ77,Huffman Internet W3C JPEG 有损 DCT,Huffman Internet,数码相机 ISO

47 BMP图像文件格式 位图文件(Bitmap-File,BMP)格式是Windows采用的图像文件存储格式,在Windows环境下运行的所有图像处理软件都支持这种格式。BMP位图文件默认的文件扩展名是bmp或者dib。

48 BMP文件 BMP文件大体上分为四个部分: 位图文件头BITMAPFILEHEADER 位图信息头BITMAPINFOHEADER
调色板Palette 实际的位图数据ImageData

49 Header typedef struct tagBITMAPFILEHEADER { WORD bfType; /* 说明文件的类型 */
DWORD bfSize; /* 说明文件的大小,用字节为单位 */ WORD bfReserved1; /* 保留,设置为0 */ WORD bfReserved2; /* 保留,设置为0 */ DWORD bfOffBits; /* 说明从BITMAPFILEHEADER结构 开始到实际的图像数据之间的字 节 偏移量 */ } BITMAPFILEHEADER;

50 BITMAPINFOHEADER typedef struct tagBITMAPINFOHEADER {
DWORD biSize; /* 说明结构体所需字节数 */ LONG biWidth; /* 以像素为单位说明图像的宽度 */ LONG biHeight; /* 以像素为单位说明图像的高度 */ WORD biPlanes; /* 说明位面数,必须为1 */ WORD biBitCount; /* 说明位数/像素,1、2、4、8、24 */ DWORD biCompression; /* 说明图像是否压缩及压缩类型 */ DWORD biSizeImage; /* 以字节为单位说明图像大小 */ LONG biXPelsPerMeter; /* 说明水平分辨率,像素/米 */ LONG biYPelsPerMeter; /* 说明垂直分辨率,像素/米 */ DWORD biClrUsed; /* 说明图像实际用到的颜色数,如果为0 则颜色数为2的biBitCount次方 */ DWORD biClrImportant; /*说明对图像显示有重要影响的颜色 索引的数目,如果是0,表示都重要。*/ } BITMAPINFOHEADER;

51 调色板 调色板实际上是一个数组,它所包含的元素与位图所具有的颜色数相同,决定于biClrUsed和biBitCount字段。数组中每个元素的类型是一个RGBQUAD结构。 typedef struct tagRGBQUAD { BYTE rgbBlue; /*指定蓝色分量*/ BYTE rgbGreen; /*指定绿色分量*/ BYTE rgbRed; /*指定红色分量*/ BYTE rgbReserved; /*保留,指定为0*/ } RGBQUAD;

52 图像数据 紧跟在彩色表之后的是图像数据字节阵列。图像的每一扫描行由表示图像像素的连续的字节组成,每一行的字节数取决于图像的颜色数目和用像素表示的图像宽度。 扫描行是由底向上存储的,这就是说,阵列中的第一个字节表示位图左下角的像素,而最后一个字节表示位图右上角的像素。

53 GIF GIF(Graphics Interchange Format)格式由CompuServe公司于1987年开发,版本号GIF87a,1989年扩充后版本号为GIF89a。 GIF图像文件以块(block)为单位存储信息。一个GIF文件由表示图形/图像的数据块、数据子块以及显示图形/图像的控制信息块组成,称为GIF数据流(Data Stream)。数据流中的所有控制信息块和数据块都必须在文件头(Header)和文件结束块(Trailer)之间。

54 GIF图像文件格式 1 GIF文件头 2 逻辑屏幕描述块 3 全局颜色表 扩展模块(任选) 4 图像描述块 5 局部颜色表 可 6
Header GIF文件头 2 Logical Screen Descriptor 逻辑屏幕描述块 3 Gloabal Color Table 全局颜色表 。。。。。。 扩展模块(任选) 4 Image Descriptor 图像描述块 5 Local Color Table 局部颜色表 6 Table Based Image Data 基于表的图像数据 7 Graphic Control Extension 图形控制扩展块 8 Plain Text Extension 无格式文本扩展块 n 9 Comment Extension 注释扩展块 10 Application Extension 应用程序扩展块 11 GIF Trailer GIF文件结束快

55 Four-pass 顺序

56 GIF文件格式的特点 GIF文件采用了LZW无损压缩算法来存储图像数据。 GIF文件允许设置背景的透明属性。

57 PNG PNG format: standing for Portable Network Graphics — meant to supersede the GIF standard, and extends it in important ways. Special features of PNG files include: Support for up to 48 bits of color information — a large increase. Files may contain gamma-correction information for correct display of color images, as well as alpha-channel information for such uses as control of transparency. The display progressively displays pixels in a 2-dimensional fashion by showing a few pixels at a time over seven passes through each 8 x 8 block of an image.

58 JPEG JPEG Joint Photographic Experts Group,ISO和IEC两个组织机构联合组成的一个专家组,负责制定静态数字图像数据压缩编码标准。 开发的图像压缩算法称为JPEG算法 ISO /IEC 10918

59 JPEG压缩算法 以离散余弦变换DCT为基础的有损压缩算法
在保证图像质量的前提下,为了进一步提高压缩比,JPEG 2000标准中采用小波变换(wavelet)算法。 以预测技术为基础的无损压缩算法。 JPEG是一个适用范围很广的静态图像数据压缩标准,既可用于灰度图像又可用于彩色图像。JPEG不仅适于静止图像的压缩,电视图像的帧内图像的压缩编码,也常采用此算法。 JPEG标准可以调节图像压缩率及其保真度。

60 Photoshop -> 另存为->格式选择->选项
案例4-3 图像格式转换与压效果比较 Photoshop -> 另存为->格式选择->选项 Photoshop -> 另存为->格式选择->选项 品质调整 文件大小调整

61 案例4-3 图像格式转换与压效果比较 品质最低, 文件容量最小 出现马赛克 品质最高 文件容量最大 看不出失真

62 EXIF EXIF (Exchange Image File) is an image format for digital cameras: Compressed EXIF files use the baseline JPEG format. A variety of tags (many more than in TIFF) are available to facilitate higher quality printing, since information about the camera and picture-taking conditions (flash, exposure, light source, white balance, type of scene, etc.) can be stored and used by printers for possible color correction algorithms. The EXIF standard also includes specification of file format for audio that accompanies digital images. As well, it also supports tags for information needed for conversion to FlashPix (initially developed by Kodak).

63 Exif Jpeg header manipulation tool
Things jhead can extract from an Exif jpeg file Time and date picture was taken Camera make and model Integral low-res Exif thumbnail Shutter speed Camera F-stop number Flash used (yes/no) Distance camera was focused at Focal length and calculate 35 mm equivalent focal length Image resolution GPS info, if stored in image IPTC header XMP data

64 Sample jhead output File name : 0805-153933.jpg
File size : bytes File date : 2001:08:12 21:02:04 Camera make : Canon Camera model : Canon PowerShot S100 Date/Time : 2001:08:05 15:39:33 Resolution : 1600 x 1200 Flash used : No Focal length : 5.4mm (35mm equivalent: 36mm) CCD Width : 5.23mm Exposure time: s (1/10) Aperture : f/2.8 Focus Dist. : 1.18m Metering Mode: center weight Jpeg process : Baseline

65 RAW文件 RAW文件几乎是未经过处理而直接从CCD或CMOS上得到的信息,其真实的图像数据没有改变。
在后期处理时,摄影师能够最大限度地发挥自己的艺术才华。用户可以自由地对某一张图片进行个性化的调整,而不必基于一、两种预先设定好的模式。 RAW可以将其转化为每个像素16位的图像,也就是有65536个层次可以被调整,这相对于JPG文件来说是一个很大的优势。当编辑一个图像的时候,特别是需要对阴影区或高光区进行重要调整的时候,这一点非常重要。

66 RAW格式图像没有经过相机的处理

67 RAW文件 单反数码相机拍摄的原始影像文件,统称为RAW文件,各个厂商生产的相机拍摄出的RAW文件后缀名各不相同。
NIKON公司生产的相机拍摄出的RAW文件的后缀名就为*.NEF,打开这种文件可以使用PHOTOSHOP等图形编辑软件,也可使用NIKON公司发布的Capture NX软件(收费软件) 佳能公司免费提供Digital Photo Professional,可以转换文件格式。

68 矢量图形文件 .eps – Encapsulated PostScript .ai – Adobe Illustrator
.fla,.swf – Adobe flash .wmf – Windows Metafile format (Office的剪贴画) .emf – Enhanced Metafile format (.wmf的后继格式) SVG -可伸缩矢量图形 (Scalable Vector Graphics)

69 PS and PDF Postscript is an important language for typesetting, and many high-end printers have a Postscript interpreter built into them. Postscript is a vector-based picture language, rather than pixel-based: page element definitions are essentially in terms of vectors. Postscript includes text as well as vector/structured graphics. Bit-mapped images can be included in output files. Encapsulated Postscript files (.EPS) add some additional information for inclusion of Postscript files in another document.

70 Postscript page description language itself does not provide compression; in fact, Postscript files are just stored as ASCII. Another text + figures language has superseded or at least paralleled Postscript: Adobe Systems Inc. includes LZW compression in its Portable Document Format (PDF) file format. - PDF files that do not include images have about the same compression ratio, 2:1 or 3:1, as do files compressed with other LZW-based compression tools.

71 SVG SVG是一种基于XML的矢量图形语言,利用SVG可以在网页上设计高分辨率的矢量图形。
SVG标准是由众多厂商和万维网协作组织W3C共同制定的,其目的就是为了要在网络上创建一种新的、受到广泛支持的、可扩展的、开放的图形格式。

72 SVG的特点 支持矢量图形、位图和文字 基于XML标准 很好的图形质量 灵活易用的文件格式 纯文本形式,用文本格式的语言来描述图像内容
支持动画、交互 可以内嵌字体、图片,文件数据量很小

73 图形图像素材的获取 用软件创建图像 从屏幕上抓取图像 用扫描仪数字化图像 用数码相机拍摄图像 用数码摄像机捕捉图像 从图像库中获取图像

74 数据库图像字段的存储和读取 在应用程序开发中,有许多场合需要实现对图像的存取 学生档案管理系统,存取学生照片 电子商务系统,产品的照片

75 图像存取的两种方法 间接存取法 把图像存储在指定的文件夹下,数据库中只保存图像文件所在的路径和文件名,对图像的存取则根据图像文件的存储路径和文件名来进行。 这种方法对数据的管理不方便,图像信息安全性和可靠性也不能保证,不适合保存重要的图像信息。 适合于图像数据较大的情况

76 直接存取法 把图像信息直接保存在数据库表中。 这是目前图像数据库技术发展的主流,可以保证图像数据的一致性和安全性。
但在读取技术实现上,很多数据库不支持图像数据的直接存取,必须由第三方开发的工具来完成数据库中图像数据的存取。

77 SQL Server 在SQL Server 中,可用于存储图像的字段数据类型有Image、Binary和VarBinary。
Binary[(n)]数据 长度固定 Varbniary[(n)]数据长度可变 Bniary类 型可存储的最大字节数为 8000 Image类型存储 的最大字节数为 231-1。

78 数据访问方法 开放数据库连接 (ODBC) 通 用数据访问接口 (OLEDB) ADO (ActiveX Data Objects)
ADO.NET JDBC

79 把图像存入数据库 图像文件写入Image字段的步骤 : ①获取图像文件的路径和文件名; ②读取图像文件数据; ③连接数据源; ④保存至数据库; ⑤关闭数据源。

80 从数据库中读出图像 实现图像字段读出的步骤 : ① 连接数据源; ②根据关键字查找图像; ③读取图像数据; ④关闭数据源; ⑤显示图像。

81 C#写SQL数据库Image字段 将图像文件以流文件形式打开,将内容读取到一个byte数组,将此byte数组写入数据库的Image字段
 FileInfo finfo=new FileInfo(“文件名”);   //绝对路径  if(finfo.Exists)  { //读取文件内容,写入byte数组          byte[] content=new byte[finfo.Length];          FileStream stream=finfo.OpenRead();          stream.Read(content,0,content.Length);          stream.Close();          SqlConnection conn=new SqlConnection(“连接字符串”);          SqlCommand InsertCommand=new SqlCommand();          InsertCommand.Connection=conn;     InsertCommand.CommandText=“Insert into 表名(Image字段名)          //为参数赋值          try          {              conn.Open();              InsertCommand.ExcuteNonQuery();          }          finally          {      conn.Close();    } }

82 C#读SQL数据库Image字段 从数据库的Image字段读取内容保存到byte数组,然后将此byte数组以文件流形式写入文件。 SqlConnetion conn=new SqlConnection(“连接字符串”); SqlDataAdapter da=new SqlDataAdapter(“Select Image字段名 from 表名”,conn); DataSet ds=new DataSet(“MyImages”); da.Fill(ds, "MyImages"); DataRow dr=ds.Tables["MyImages"].Rows[0]; //读取的第一行内容      byte[] content; content=(byte[])dr[“Image字段名”]; int ArraySize=content.GetUpperBound(0); FileStream stream=new FileStream("文件名", FileMode.OpenOrCreate, FileAccess.Write); stream.Write(content,0,ArraySize); stream.Close();

83 PictureBox控件      DataRow dr = dt.Tables[0].Rows[0]; byte[] br = null; MemoryStream ms = new MemoryStream(); if (dr["image1"].ToString() != "") {        br = (byte[])dr["image1"];        ms = new MemoryStream(br, 0, br.Length);       this.pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;        this.pictureBox1.Image = Image.FromStream(ms);        ms.Close();  }  else  {       this.pictureBox1.Image = null;  }

84 立体图像的基本原理 立体图像是利用人眼立体视觉现象制作的图像。普通绘画、摄影作品以及计算机三维动画,只利用了人眼对光影、明暗、虚实的感觉得到立体的感觉,并没有利用双眼的视觉差别。利用双眼立体视觉构成的立体图像,将得到更精彩的效果。

85 双目视觉原理 人眼观察景物时,根据不同的视线角度,可以区分近景和远景。对于某一物体来讲,不仅能看到物体的宽度和高度,而且能知道它们的深度,能判断物体之间或观看者与物体之间的距离。研究表明,由于人类的两眼之间存在一个距离(约65 mm),左眼和右眼在观察一定距离的一个三维物体时,所得到的物体图像是不同的,即人眼的左、右眼各得一幅图像,这就是视差效应,大脑通过眼球的运动、调整,综合了这两幅图像的信息,从而感知到具有深度变化的三维空间,即产生了立体感。这就是立体视觉原理。

86 立体成像的原理 根据双目立体视觉的基本原理,即根据视差可以模拟出三维立体信息。如果将两个完全相同的摄像机平行放置,假设空间的一点P(X,Y,Z),在这两个摄像机中像点分别是(x1,y1)和(x2,y2),那么在已知两个摄像机相距基线长度B和透镜焦距f的情况下,就可以计算出深度。 立体成像的原理

87 x/z = xL/f 和 (x-B)/z = xR/f
在立体坐标系的X轴上,平行放置两个完全相同的摄像机OL和OR,设坐标系原点在左透镜中心,而且两机在X方向间距为基线B,假如对应于摄像机的两个图像平面位于同一平面Q。 空间的一点P在两个图像平面中的投影点GL、GR称为共轭对。当两幅图重叠之后,共轭对之间位置差XL-XR就是视差。 根据相似三角形关系有: x/z = xL/f 和 (x-B)/z = xR/f 深度:z = f/(B(xL-xR)) 可见,物体的深度信息就是通过视差来恢复的,视差越大说明物体离透镜的距离越近;反之,则越远。

88 在实际应用中,例如立体摄影的风景照片,就是由人的双眼从不同的角度上观察到某物体时左右眼各自看到的图像组成。左眼看到的是某物体向右错动了一些的图像,右眼的看到的某物体向左错动了一些的图像。
立体摄影/摄像一般都采用双镜头同步拍摄,如同人的双眼观看景物,产生左眼与右眼两个具有一定视差的平面影像。 立体电影由一系列的图像组成,播放立体电影时,需要将来自两个镜头的像进行同步合成播放。观众观看时,需要用立体眼镜来对那些合成的画面进行同步分解,使人的两眼可分别看到不同的图像,最后通过大脑来合成三维立体视觉。 在计算机上,也可以根据左/右视差合成三维立体视觉。

89

90 全景照片Panoramas QuickTime VR is used to view a single surrounding image.
Various images are stitched together to create a single panorama.

91 PTM PTM (Polynomial Texture Mapping) is a technique for storing a representation of a camera scene that contains information about a set of images taken under a set of lights that each have the same spectrum (say, a xenon flash), but with each light placed at a different direction from the scene. PTM was invented at Hewlett-Packard.

92 50 input images for PTM: lights individually from 50 different directions ei, i=1..50;
interpolated image under new light e.

93

94

95 Lighting Array

96

97

98

99 复习题 给定图像分辨率、图像类型,计算在没有压缩的情况下所要的存储空间。
若采用1024×768显示分辨率,3Byte/象素,则满屏图像的总数据量是多少MB? 1024×768×3= 2304KByte =2.3MB 传真数据如果只传送2值图像,以200dpi的分辨率传输,一张A4(210mm*297mm=8.27inch*11.7inch)稿纸的内容的数据量是多少KB? 1654*2337*1=483KB

100 什么是真彩色?什么是伪彩色? 什么是颜色查找表?有什么作用? 按照生成图像的方法,图像分为哪两类?各有什么特点? 为什么要进行伽马()校正? Gif图像能表示的颜色数量是多少?为什么可以用Gif制作简单的动画? 目前常见的浏览器支持哪些图像格式?


Download ppt "多媒体技术基础 数字图像 Digital Image."

Similar presentations


Ads by Google