摘要:
引 言 在QuickTime Component家族中,Video Digitizer和Video Output Component(分别简称VDig和VOut Component)是重要的成员,它们掌管视频数据对硬件设备(主要通过PCI板卡)的输入输出。这里采用的范例是Apple提供的示例程序:SoftVideoOutputComponent和SoftVDigX。第一节 Video Output Component Video Out Component主要完成数据向硬件输出,输出的模式配置和在往驱动馈送数据之前的必要处理工作都在这里完成。 (未完待续)第二节 Video Digiti... 阅读全文
摘要:
一、判断两封闭单连通图形A和B关系: 旋转法:取图形A内的任一点X,如果X是B内部的点,则说明A、B相交。否则,连接X和B的边界上点P作线段XP。从X出发,考察从线段XP,作状态(IA,IB),IA和IB非零与否分别表示在A和B的内部与否,初始时为(1, 0),经过A或B的边界分别使IA或IB翻转,如果出现(IA,IB)=(1,1)就说明A、B相交,否则说明A、B不相交。二、判断一个点X是否在N边形内部: 圆环染色法:以X为起点,多边形各端点Pi为终点得向量XPi(i=0,1,...,N-1)。此后顺序考察各向量过程中,用到两个运算:以内角为准,到对比向量va相对于vb是顺时针还是逆时针的.. 阅读全文
摘要:
引 言 此处介绍的QuickTime Component在原理上和拙文《Mac OS的Component技术简介》中的描述没有冲突,只是作为一种特例,加上QuickTime本身的一些特性,组织形式上有些区别,这些区别不是本质的。本文引用的实例是Apple官方网站上的示例程序:Electric Image Component。它是用于处理Electric Image(文件扩展名为EIM)的一个典型的QuickTime的Component(插件)。 这个例子有两大优点: 一、内容全面,包括静态图像的导入导出插件Image Importer和Image Exporter,静态图像的编解码插件I... 阅读全文
摘要:
Component技术主要内容为:Component体、Component Manager(CM)和客户程序(Client)。关于Component技术的完整介绍可参见Apple的官方文档:http://developer.apple.com/documentation/mac/MoreToolbox/MoreToolbox-333.html,它是Inside Macintosh一书的一个章节。 每个Component相当于一个组件类,而具体的使用必须对Component进行实例化,通过所谓Component Instance实现各种功能。一般而言,CM根据Client要求打开一个Com... 阅读全文
摘要:
本章内容可能要涉及一些信号和图像处理的知识,我将尽可能用较为正式的表述,具体内容可以参考相关书籍。JPEG2000信号与信息处理的一些基础知识也可以参考我的笔记:http://lincoln.yu.googlepages.com/sgnotes.zip 码流解码过程从main函数中的kdu_codestream codestream的构造声明处开始。随即完成对输入流的绑定,和codestream的一些基本设置。然后根据codestream的已有信息获得通道(channel)个数并从每个通道中取得分量的图像尺寸(dimension)信息。接着完成输出流的配置。随后的两个while嵌套就是进... 阅读全文
摘要:
JPEG2000的很多参数都与图像的预处理和分割有关。一般的彩色图像都具有三个分量,例如RGB,或者YUV等。在进行主要的图像分割之前,现要将原始图像信号去直流(所谓DC层进)并进行分量变换(主要是将RGB变换为YCbCr)。这里仅对彩色图像的一个分量或者黑白图像进行讨论。 第一个重要概念是参考网格(reference grid)。这相当于JPEG2000图像的基本坐标系。而图像区域相当于该坐标系下的某个偏移处(一般记作(XOsiz, YOsiz))开始,并以某个偏移(一般记作(Xsiz-1,Ysiz-1))为末尾的的矩形区域。对于不同的分量可能采用不同的二次采样,例如对于YCbCr的亮... 阅读全文
摘要:
JPEG2000是新一代的静态图像压缩格式,它可能将取代现行的JPEG最终应用于网络和媒体,甚至一些对图像质量和(或)码率要求很高的场合。正在进行中的Motion-JPEG2000项目将支持运动图像,它将以其高端特性应用于数字电影业务,但是从目前看Motion-JPEG2000是一种基于JPEG2000帧内压缩而无帧间编码的格式,所以对JPEG2000的了解就非常重要。JPEG2000目前的资源相对较少,经典的范例是David Taubman的程序Kakadu。这里,我将基于其程序在一个简单的JPEG2000文件上的应用作简要说明。本文仅用于学习参考,涉及源码和技术版权属于原作者David.. 阅读全文
摘要:
网上有不少批评BCB的文章。我虽没啥水平,但觉得凡批评,大多都是有一定道理的。其实结合本人使用,并综合一些友人(主要有范德成(Robbie T.Mosaic)和张勇(xzb))的意见,发现BCB(主要是相对于VC,不怕人笑话,我觉得在Windows下的其他C++环境,那些mingw都是瞎凑热闹的)的问题的确很多:1、Bug主要集中于IDE环境。VCL的bug我是没能力发现。但是IDE无论是编辑还是编译连接,都存在一些毛病。当然我没能力跟踪记录,但是的确是有的,会造成使用不便。2、IDE设计的确有不少不合理的地方。例如:众所周知的代码自动完成;Project Manager对项目文件的管理,似乎 阅读全文