1、国内图书分类号:TN47国际图书分类号:621.3学校代码:10213密级:公开工学硕士学位论文CBCT 图像重建算法的定点化研究硕 士 研 究 生:闫磊导 师:张岩教授申 请 学 位:工学硕士学 科:微电子学与固体电子学所 在 单 位:深圳研究生院答 辩 日 期: 2012 年 12 月授予学位单位:哈尔滨工业大学Classified Index: TN47U.D.C: 621.3Dissertation for the Master Degree in EngineeringSTUDYING AND IMPLEMENTATIONFIXED-POINT ALGORITHM ON CONE-B
2、EAM CTCandidate:Supervisor:Academic Degree Applied for:Speciality:Affiliation:Date of Defence:Degree-Conferring-Institution:Lei YANProf.Yan ZHANGMaster of EngineeringMicroelectronics and Solid-StatePhysicsShenzhen Graduate SchoolDecember, 2012Harbin Institute of Technology哈尔滨工业大学工学硕士学位论文摘 要Katsevich
3、 类的重建算法是现如今主流的重建算法。本文主要的研究对象就是此类算法。其次,定点算数在硬件实现时,相比较于浮点的硬件实现,可以获得更快的速度,更低的功耗和更小的面积,这些都是在硬件设计中必须考虑的制约条件,所以定点算数有其重要的应用空间。对于全定制的 ASIC 芯片,设计者都会使用定点的硬件机构。本文的主要目的是将 CT 的专用 ASIC 实现面积优化。对Katsevich FBP 算法的定点化是本文主要研究内容。本文中首先对 Katsevich FBP 算法进行理论研究和推导,将整个算法简化的分为五部分,对于每个部分进行细致研究,同时提取各部分的数据流图,以用于下部分定点化分析中。定点化分析
4、中,本文对于现行的定点化方法进行研究,经过充分的对比,分别为范围分析和精度分析选定方法,在范围分析部分,本文采用基于仿射算术(AA)的算法,在精度分析部分,本文选用量化误差传播模型的算法(QOE )和模拟自适应退火算法(ASA)两种方式相结合。对于所得到的结果,本文列出主要信号的整数位宽和小数位宽,在精度分析时,根据不同的精度要求,本文分别得到 2-4,2-8,2-13 三组精度分析的结果,对于不同的结果,本文采用 MiniBit面积函数分别估算各部分的面积消耗。并将结果与 matlab 工具中自带的定点化函数进行比较,在范围分析和精度分析部分本文所得结果更为优化,同时在面积消耗方面也优于对方
5、。同时,在定点化过程中本文采用的算法支持线性运算,所以本文选用 CORDIC 算法将算法中超越函数部分进行了线性化处理,并分别用软件和硬件实现,并根据医学用图像的要求,最终确定在硬件实现中,CORDIC 算法所需要的流水级数。关键词:Katsevich FBP;定点化;范围分析;精度分析-I-哈尔滨工业大学工学硕士学位论文AbstractThe first time in 2002 Katsevich proposed a spiral cone-beam filtered backprojection (Filtered Back-projection, FBP) and precise r
6、econstruction algorithm. Thisalgorithm is more accurate. And the main object of this article is such algorithms.Second, the fixed-point arithmetic in hardware implementation, compared to thefloating-point hardware implementation can be obtained faster speed, lower powerconsumption and smaller area,
7、so the fixed-point arithmetic has important applicationsspace. For the full custom ASIC chip, designers will use the fixed-point hardwaremechanism. The main purpose of this article is dedicated ASIC implementation of theCT area optimization.In the beginning of the article, Katsevich FBP algorithm is
8、 studied and derivated.For the simplification, the whole algorithm is divided into five parts, simultaneousextraction of each part of the data flow diagram for the lower part of the fixed-pointanalysis. In the fixed-point algorithm, we choose algorithms based on affine arithmetic(AA) in range analys
9、is and quantization error propagation model algorithm (QOE) andanalog adaptive annealing algorithm (ASA) in the precision analysis. For the resultsobtained, the article lists the main signal the integer bits wide and fractional bits wide,precision analysis, different a precision requirements to erad
10、icate this paper theaccuracy of analysis results get 2-4,2-8,2-13 three groups for the different results. Thispaper uses MiniBit area function estimates of the various parts of the area consumption.The results compared with the one form Matlab tool. In the range of analysis andprecision analysis par
11、t of this article is a more optimized while better than the other interms of area consumption. We select CORDIC algorithm linear processing algorithmtranscendental functions. With the requirements of the medical use of images, finallydetermined in the hardware implementation, CORDIC algorithm requir
12、ed pipelinestages.Keywords: Katsevich FBP, Fixed-point arithmetic, Range analysis, Precision analysis- II -哈尔滨工业大学工学硕士学位论文目 录摘 要 . IABSTRACT .II第 1 章 绪 论 11.1 课题背景及研究的目的和意义 11.2 国内外在该方向的研究现状及分析 21.2.1 医疗CT图像重建技术的发展 21.2.2 定点化技术的现状及分析 . 31.3 本文的主要研究内容 4第 2 章 KATSEVICH三维重建算法及其CDFG的提取 . 62.1 Katsevich三
13、维重建算法的介绍 62.1.1 图像重建算法的基础 . 62.1.2 Katsevich三维重建算法中基本定义 . 72.1.3 Katsevich FBP三维图像重建公式 . 92.2 CDFG的介绍和提取 . 102.2.1 CDFG的介绍 102.2.2 Katsevich FBP算法的CDFG提取 .112.3 本章小结 23第 3 章 KATSEVICH三维重建算法定点化中范围分析和精度分析 243.1 定点化技术的背景知识 243.1.1 浮点数 243.1.2 浮点数的定标 . 253.1.3 定点数和定点运算 263.1.4 定点化中区间算术(IA)和仿射算术(AA) . 28
14、3.2 定点化中超越函数的算法研究 303.2.1 查找表法 303.2.2 多项式拟合 303.2.3 CORDIC算法 313.3 定点化的范围分析 353.3.1 基于仿射形式的范围分析 353.4 定点化的精度分析 37- III -哈尔滨工业大学工学硕士学位论文3.4.1 基于极值理论的精度分析 . 383.4.2 基于量化误差传播模型的精度分析 . 383.5 定点化的方案选择 403.6 本章小结 41第 4 章 实验结果及分析 424.1 对于Katsevich FBP算法的分块 . 424.2 Katsevich FBP算法CDFG提取及对CORDIC 算法的实现 434.2
15、.1Katsevich FBP算法CDFG提取 . 434.2.2 CORDIC算法的软件和硬件实现 434.3Katsevich FBP算法的定点化 . 464.3.1 定点化的范围分析 464.3.2 范围分析结果 . 474.3.3 定点化精度分析 . 504.3.4 精度分析结果 514.3.5 定点化结果 564.3.6 结果比较与分析 . 574.4 本章小结 59结 论 60参考文献 61哈尔滨工业大学学位论文原创性声明及使用授权说明 64致谢 65- IV -。哈尔滨工业大学工学硕士学位论文第 1 章 绪 论1.1 课题背景及研究的目的和意义科学家们自 1895 年发现了 X
16、射线以来,这项发现对于医学诊断方式便产生了具有深远意义的影响。针对使诊断结果易于观察的优点,当今医学界在某些临床中已经越来越依赖于可视化的病情诊断,这项技术不仅在医学诊断同时在教学科研等诸多方面正发挥着极其重要的作用1。在可视化技术还不够成熟的时候,还只是通过得到影像数据,由医务工作者通过可视化的数据进行诊断。但是对于传统技术,普通的胶片和显示屏都是提供的简单地二维图像,所得到的诊断结果会或多或少的带有诊断者的主观经验判断,也就说本应客观的诊断结果却会取决于诊断者的临床经验2。通过软硬件技术不断的发展与应用,使得这类情况有了较大的改善,通过医学图像的三维重建,可以让诊断者从多层次方面,各个角度
17、对可视化的数据进行详细的观察与分析。这对提高医学图像的病情诊断有着非同凡响意义,而且在诊断的准确性和正确性方面有了较大的提高 3科技突飞猛进的今天,医学图像技术伴随着计算机技术的迅速发展,使得该技术逐步渗入到医学领域中,对于整个医学界有着划时代的意义。CT(ComputedTomography,计算机断层摄影)机是便是医学领域的重要的影像技术的产物。1963年,美国塔夫茨大学的基础物理学家柯马克(Alan Cormack,1924-1998 ),将理论应用于装置1。而第一个 X-ray CT 机(又称 EMI-Scanner)在 1972 年于英国温布尔顿 Atkinson Morley 医院
18、诞生。虽然只能做大脑断层扫描,而且较为耗时每个影像扫描一次要四分钟,在传输成影像总计需要七分钟。但是这在医疗影像领域已是意义深远2。这项跨时代重大发明让郝殷斯费(Godfrey Newbold Hounsfield,1919-)和柯马克(Alan Cormack,1924-1998)共同分享了 1979 年诺贝尔生理和医学奖3。1999 年,有一个被认为是 CT 机发展历史上一个划时代般的发展诞生,这就是多层面螺旋 CT。多层面 CT 相比于前一代 CT,其扫描速度更快,计算数据更加准确,很快,多层面螺旋 CT 便成为主流产品,各个医疗器械厂商和研究机构开始研究和发展多层面旋转 CT。随着 C
19、T 技术的不断发展,CT 机正在向着螺旋线锥形束 CT转 变 1,3 。 2002 年 Katsevich 首 次 提 出 了 一 种 螺 旋 锥 束 滤 波 反 投 影 (FilteredBack-projection,FBP)精确重建算法,这个算法并没有利用 Radon 变化,并且计算结果更为准确。如今主流的重建算法就是 Katsevich 类的重建算法4 。-1-。哈尔滨工业大学工学硕士学位论文本课题便是以此为背景,对 Katsevich FBP 重建算法进行了研究,然后对其各部分系统数据进行定点化处理,范围分析和精度分析对于每个系统信号,并根据不同的精度要求,得到不同的面积要求。最后进
20、行了范围数据和精度数据的分析。本课题来源于哈尔滨工业大学深圳研究生院微电子技术中心的广东省国际合作项目“医用 CT 机锥束三维成像的计算机软硬件系统研制”和深圳市基础研究项目“数字信号处理芯片中的定点化研究” 。1.2 国内外在该方向的研究现状及分析1.2.1 医疗CT图像重建技术的发展电脑断层扫描系统(computed tomography 简称 CT)虽然是上世纪七十年代才被发明,但是其数学理论基础其实早在 1917 年就被奥地利的数学家雷登(JohannRadon,1887-1956) 推导出,证明了物理可以通过其的投影将其重建出来2 。CT 在1972 年研制成功的时候,首先是用于脑颅
21、疾病的诊断和医疗的,后来在 1976 年扩大到了适用于全身检查的范围,是 X 射线学中的一大革命 3。它是通过对人体层面进行断层扫描而获取有用信息,然后经过计算机的精确计算重新获得重建图像,提高了检出率和诊断准确性 4CT 机发展至今,经历了主要的“五代” 形态:第一代 CT:采用旋转/平移的扫描方式,X 射线发射管和接收器环绕人体做同步平移移动,扫描速度较慢,一次采集数据少,只有一枚探测器,扫描器在运行时有很大的声音和振动,已被淘汰3,4。第二代 CT:差别不大,不同的地方在于扫描器有多个探测器, X 光由单一线束转换成为扇形状(Fan beam),旋转角度从 1 度变为 30 度,因此大大
22、减少了扫描时间3,4。第三代 CT:采用的是扇形 X 光射线源配合对侧一排 300800 个探测器排列成扇形做同步 360 度旋转。扫描时间为 25 秒一次横断面的影像扫描便可以完成,由于扫描时间很短,所以有足够的时间进行全身的检查,同时机器的声音和振动也大幅的减小,患者的体验感更好2,4。第四代 CT:在第三代基础上进行了改良,探测器可达到上千个,而且 X 射线管可以绕着检测体做连续 360 度旋转,是螺旋式(helical)CT ,扫描时间更短2 。第五代 CT:通过电子枪来发射 X 光,扫描时间可以达到 50 毫秒,更清楚图像效果使得心脏检查更加容易,检查费用较为昂贵,受到限制。-2-哈
23、尔滨工业大学工学硕士学位论文表 1-1 各代 CT 机的比较Table1-1 Compare of different CT machine-扫描方式扫描模式第一代平移+旋转单笔第二代平移+旋转多笔或窄束第三代旋转+旋转扇束第四代平移+静止广角扇束第五代静止+静止倒置锥束随着科技的发展,多层旋转的 CT 技术得到了突飞猛进的发展,自从上世纪九十年代,第一台四层螺旋 CT 出现,CT 扫描的多层化每隔一年半就会以两倍的速度增长,相对单层旋转 CT,多层旋转技术在探测器阵列设计,厚度选择,重建算法及扫描速度等几个方面都取得了较大的突破,如今 General Electric、Siemens、Tos
24、hiba、Philips 等世界著名厂商不断推出 8 层, 16 层,32 层,64 层图像的 CT5,6。近几年来,扫描技术已经到了微米的等级,名称为微断层摄影(Micro-tomography),但是这只适合小物体或者是动物,还不能使用在人体身上。1.2.2 定点化技术的现状及分析由于在通用开发平台上,浮点(floating point)运算较为快速而且较为便捷,所以在现如今数字信号处理方面的硬件系统中,浮点运算应用的较为广泛。一般的,在对算法进行验证时,考虑到时间问题,会使用浮点运算,验证完毕后,再根据具体应用要求即浮点硬件平台还是定点(fixed point)硬件平台,判断最终是否需要
25、进行相应的处理。我们不可否认,对于定点算数(fixed pointed Arithmetic),在硬件实现时,相比较于浮点的硬件实现,可以获得更快的速度,更低的功耗和更小的面积,这些都是在硬件设计中必须考虑的制约条件,所以定点算数有其重要的应用空间。对于全定制的 ASIC 芯片,设计者都会使用定点的硬件机构。所谓定点化,就是将浮点算法转变为定点算法的过程。对于数字系统的定点,就是给出其中每个信号的整数位宽和小数位宽,而定点就是指小数点位置是固定的。范围分析和精度分析是定点化过程中两个重要的部分。范围分析主要是运算整数位宽,通过对信号的分析来确定该信号的变化范围,为了在定点过程中不会出现上溢(o
26、verflow)的现象;精度分析则主要运算信号的小数部分,通过分析找到最优化的小数位宽,这里所谓的最优化通常是针对于某种设计的预期目标,如面积最优,功耗最优或者两者的折中,同时也防止出现信号的下溢(underflow)7。从另一方面讲,信号的定点化就是信号的位宽优化。定点化本身是个较为耗时的过程,甚至在一些复杂的系统设计中,这个过程本身就占据了一半以上的设计周期7。-3-哈尔滨工业大学工学硕士学位论文对于定点化的研究,主流方向分为两类,基于仿真的定点化方法和基于分析的定点化方法。基于仿真的定点化方法,是在系统的信号输入端提供大量的数据,使得输出的数据变化范围和精度达到要求,类似进行蒙特卡罗仿真
27、。基于分析的定点化方法,使用优化算法对系统的数据进行分析,从而计算出每个信号的区间范围和精度范围,在通过分析的基础上,找到最优化的小数位宽和整数位宽,从而来满足系统的需求。下面对于两种方法进行比较见表 1-2:表 1-2 基于仿真的定点化方法和基于分析的定点化方法比较Table1-2 Compare of different fixed-point method基于仿真的定点化方法 基于分析的定点化方法缺点优点需要大量的浮点数据或者定点数据的仿真时间,从而延误产品上市时间,增加设计成本,不利于市场化;而且并不能保证大量的数据仿真能包含所有的情况,有可能发生数据的溢出。比较真实的反应出系统实际的
28、信号变化范围和精度。每种优化算法都会存在不足,所以结果在某些情况下会达到最优的组合。能够节约时间,不需要花费大量的时间,降低设计成本,利于产品市场化。现如今,国内外主要研究的重点集中于基于分析的定点化方法。信号的仿射形式(Affine Form )可以较好地保持住各信号只间的相关性,所以目前大多数信号范围分析都是采用基于仿射算数的方法。与仿射算术相对应的就是区间算术(IA),区间算术易于计算,但是结果的准确性较仿射算术差,主要是其在运算时不考虑信号之间的相关性,导致结果出现较大的偏离。基于分析的精度分析,会计算数据控制流图(CDFG)中的量化误差传播,然后再根据具体的优化目标,利用优化算法来计
29、算小数位宽。虽然可以很快的得到结果,而且可以保证结果一定满足要求,但是在对于不同的优化算法会得到参差不齐的精度结果,从而对于硬件结构会产生影响。1.3 本文的主要研究内容本文研究的主要内容是分为两大部分,首先对三维图像重建算法进行了调研-4-哈尔滨工业大学工学硕士学位论文与研究,最后选定 Katsevich FBP 三维重建算法,对算法本身进行了仔细的研究与分析,为了能够进行定点化分析,提取了算法各部分的数据流图,并且对于算法本身中所有的超越函数部分,根据调研与比较,选定 CORDIC 算法,并对 CORDIC算法本身进行了软件和硬件仿真,确定了硬件流水级数。第二部分则是通过调研,选择了基于仿
30、射算术的算法进行信号系统的范围分析,选择量化误差传播模型函数和模拟自适应退火算法进行信号系统的精度分析,最终目标是为了达到较为小硬件实现的面积,完成整个算法定点化过程。第一章中大致介绍了课题的研究背景和研究意义,三维重建算法和 CT 的研究和发展现状,定点化算法的发展现状。第二章中详细介绍 Katsevich FBP 三维重建算法,整个算法中所涉及的重要概念,对于整个大的算法进行分块,对于每个分块提取它的控制数据流图(CDFG)。第三章中详细介绍了 Katsevich FBP 三维重建算法定点化中的范围分析和精度分析,对于范围分析使用的基于仿射算术的算法进行了介绍和讨论,对于精度分析使用的量化
31、误差传播模型函数和模拟自适应退火算法进行了介绍和讨论,并对于超越函数选择的 CORDIC 算法进行软件和硬件仿真。第四章中得到范围分析和精度分析的结果,并对经过进行分析,对于由软件matlab 自带函数 fi 得出的结果相比较。-5- u nd哈尔滨工业大学工学硕士学位论文第 2 章 Katsevich三维重建算法及其CDFG的提取CT 的图像重建过程根据射线的扫描方式,分成平行束,扇形束和锥束等等,本论文中研究的 Katsevich 三维重建算法就是锥束三维图像重建算法中的一种。锥束三维图像重建就是射线源以螺旋锥束的轨迹扫描被测物体,探测板通过收集到的数据进行图像的重建。其实,现如今科研人员
32、的主要工作就是如何快速有效地得到扫描数据并且快速有效地根据反推原函数来得到重建的数据。近几十年来,科研人员依据不同的要求得到了各种不同的算法,其各自有不同的优缺点,现在来看,我们大致可以将这些算法分为近似重建算法和精确重建算法。而 Katsevich三维重建算法便属于精确重建算法。2.1 Katsevich三维重建算法的介绍2.1.1 图像重建算法的基础自从 1895 年物理学家伦琴在试验中发现了 X 射线后, X 射线便很快给医学带来了一场革命,X 射线在 CT 技术的应用中起到了重要的作用,X 射线是一种不可视的射线,具有波粒二象性,X 射线在对于不同的密度的物质,具有不同的能力的穿透性,
33、通过检测 X 射线穿过不同密度的物质后的强度,就可以分析与计算出该物质的物理特质,正是这点,成为了医学图像重建的基础1。I I 0ed (2-1)式中 I 穿过物体后的射线强度;I 0 入射 X 射线的强度; 物质对该波长射线的线性衰减系数;d 穿过均匀密度物体的路径长度。从(2-1 )式中可以看到, 代表的衰减系数是一个定值,则意味着 X 射线穿过的物体密度是均匀的,但是在实际应用中,人体的肌肉,脂肪,血液和骨骼的密度都是不同的,所以对应的衰减系数也会不一样。为了方便考虑与计算,我们可以用到微分的思想,即是把非均匀物体分为很多小部分,我们认为这些小部分为均匀的,所以便可以在这些小部分中使用相
34、同的衰减系数7。在非均匀物质中的衰减效果我们就可以看成是在均匀物质中衰减效果的累计过程。如(2-2)式I I 0 e u1d eu 2d e u3d e u nd I 0 en1 (2-2)-6-通过 PI 线上的数据点就可以重建目标。图 2-1 给出 PI 线示意图。哈尔滨工业大学工学硕士学位论文在(2-2 )式中,当分成的每个部分足够小的时候,即当d 0 时,(2-2)式便成为沿着射线方向的积分。p L(x )dx (2-3)(2-3)式中, p 为投影数据。每条 X 射线穿过检测体后都会在探测板上得到一个投影数据,投影数据就是重建算法中的输入数据。在实际的医学应用中,会将被测试者的组织分
35、成密度均匀的小块,我们称这些小块为体素,CT 医学的重建的基本单元就是这些体素,探测板上得到的值就是X 射线经过体素衰减后得到的衰减值,当设计者将体素部分划分的越细小,则显然可见,探测板上所得到的探测数据越多,数据量越大,重建后得到的图像细节越清楚7。同时,我们也可以知道,探测板上的值是离散的,并不是连续的。为了应用于螺旋轨道的医学重建中,上述中,射线源的运动轨迹便是一个螺旋曲线,对于螺旋曲线,我们定义如下:y(s) R cos(s), R sin(s), P s T2 (2-4)式中 y(s) s 角度的螺旋线位置坐标;s 螺旋线上点的旋转角度;R 螺旋线半径;P 螺旋线步进,实际为扫描床的
36、步进。螺旋线的定义在下面要多次被使用,而且在螺旋锥束重建算法中也是有着举足轻重的作用。2.1.2 Katsevich三维重建算法中基本定义在 Katsevich 三维重建算法中,有些必要的基本概念,这些参量在理解算法中有重要的作用。(1) PI 线。在螺旋锥束 CT 图像重建算法中,PI 线这个非常基础的概念是丹尼尔森提出的。PI 线是指在螺旋线上任取两个旋转角度小于 360 度的两点 y(sb )和 y(st ) ,连接而成的一条直线。PI 线段就是在这两点之间的线段。PI 线有个非常重要的性质:对于螺旋线内的任意一点,有且仅有一条 PI 线穿过,这个性质对于图像重建算法有着重要应用,这也就
37、是说,PI 线可以填充满整个重建空间,所以8-7-哈尔滨工业大学工学硕士学位论文图 2-1Fig.2-1PI 线示意图Sketch map of PI line(2) Tam-Danielson 窗。Tam-Danielson 窗是锥束图像重建算法中是非常重要的概念。在图像重建过程中,要想得到螺旋线内物体的三维情况,需要的二维探测板上最少数据必定包含在 Tam-Danielsson 窗内。射线源发出的锥束 X 射线与螺旋线轨道相交的四个点,在探测板上形成投影区域,我们称为 Tam-Danielsson窗11 。重建图像的质量受到螺距变化的影像,当螺距越小时,图像中的失真度越低。所以给定的探测板
38、尺寸必定对应着最大的螺距。图 2-29给出 Tam-Danielson窗线示意图。图 2-2 Tam 窗的形成Fig.2-2 Forming of Tam-Danielsson window(3) K 平面和 K 线。螺旋曲线上的三个点,这三个点必须满足 y(s) ,y(s ) 与 y(s 2 ) 且 ( / 2, / 2) ,由这三点构成的一个平面我们称为 K 平面12 。 K 线则是 K 平面与探测板平面的相交的直线。对于一个被检测的点,若是它的投影点在 Tam-Danielson 窗,则通过该探测点的 K 平面是唯一的,同时对于投影点,存在唯一的 K 线通过。图 2-310给出 K 平面
39、和 K 线示意图。-8-PV qg f u2 D2g f哈尔滨工业大学工学硕士学位论文图 2-3 k 线及 k 平面示意图Fig.2-3 Sketch map of k line and k plain2.1.3 Katsevich FBP三维图像重建公式f ( x) 12 2 IPI ( x )1x y(s)20 D f ( y(q), (s, x, ) q sd dssin (2-5)式中 f ( x) 重建物体的三维密度函数表达式;Df(y(q),(s,x, )探测板上接收到的投影数据值;y(s)螺旋线上 X 线点位置;PV 柯西积分;m(s, )k(s, )平面的法线单位矢量;(s,x
40、, ) k (s, ) 平面上的任意方向单位矢量。通过观察,我们发现 Katsevich FBP 算法其实就是针对 K 线上的运算,利用 K线上的数据进行反向积分,重建出原始数据13。上式较为复杂,为了便于后面的讨论与研究,我们可以将公式(2-5)按照不同的运算步骤分为以下几个部分:(1) 公式的第一部分使用的微分求导,利用探测板上得到的数据 Df ,进行微分求导运算,这里的微分求导采用的是链式求导法:g1(s,u, w) q Df ( y(q), f (s, x, ) |qs ( q Du uwg fDw ) |qs (2-6)(2) 长度矫正部分,由于探测板是平板探测器,所以在接受数据时会
41、发生一定的失真,要对探测板接收到的数据进行修正,就是这部分的作用:g 2 (s, u, w) Du2 D 2 w2g1 (s, u, w) (2-7)(3) 向前插值运算部分,因为 K 线投影到探测板上的数据并不在同一行中,但是在计算投影值时,必定是同一行中的数值,所以这部分要将 K 线上的值使用-9-g4 (s, u, w) kH (u u )g3 (s, u , )du 哈尔滨工业大学工学硕士学位论文线性差值的方法重排到一行中。式(2-9)中的 wk (u, ) 是坐标变换。g 3 (s, u, ) g 2 (s, u, wk (u, ) (2-8)wk (u, ) DhR ( utan
42、D ) (2-9)(4) 数据的滤波部分,这一部分主要是对沿着 K 线方向,对数据进行滤波操作,这里的滤波方法选择是希尔伯特变换。希尔伯特变换的数学实现方式就是傅里叶变换和卷积。 (2-10 )(5) 向后插值运算部分,这部分是将滤波后的数据映射到原来的坐标系,使用的向后插值方法和向前插值运算是一样的,都是线性插值。g5 (s, u, w) g 4 (s,u, (u, w) (2-11 )(6) 反投影部分,这部分就是根据前面几部分得到的数据进行反投影运算,得到最后的重建数据。f ( x) 12 stsbg5 (s, u* , w* )v* (s, x) ds (2-12 )通过上面的分析,K
43、atsevich FBP 算法从一个复杂的算法变的简单明了,而且分成的以上六部分的推导过程,可以进行分别的研究,研究清楚每个部分的实现方式和数据流向,便于下面进行定点化的分析与研究。2.2 CDFG的介绍和提取2.2.1 CDFG的介绍在集成电路和芯片技术高速发展的今天,市场对产品的复杂度和上市时间要求的不断提高,为片上系统设计方法和验证方法等多方面带来了巨大的挑战。控制数据流图(Control Data Flow Graph, CDFG )在芯片设计和系统信号定点化的过程中有着广泛的用途,例如:系统中软件和硬件的功能的划分,系统的特性描述,设计优化和系统综合,仿真调度优化和测试与验证,系统定
44、点化中信号范围和精度分析等。对系统描述建模后,进行系统信号流向,系统信号运算,以及验证系统的功能描述的正确性,都是非常有必要的。在功能验证和分析方面,CDFG 是一种重要的手段。控制数据流图除了系统硬件逻辑功能的描述,还可以表述软件的流程,当出现硬件描述语言和软件语言相结合是,可以通过 CDFG 进行转换和互相验证。- 10 -g fg fu哈尔滨工业大学工学硕士学位论文CDFG 其实是由两个部分组成,控制数据流图和数据控制流图,同样的,也可以分为控制部分和数据部分。控制部分主要表述一些循环部分,选择部分,判断部分等;而对于数据部分,则是运算和处理实体,其中表示输入的各种数据的流向和运算,各个
45、输出的运算过程和如何作为下级运算的输入。CDFG 可以用于对高层次的结构的表示,对于CDFG 中的每个节点,除了可以表示简单的操作和运算以外,还可以将它表示成子函数的调用,同时,这个子函数中本身也包含着多个子节点,这种被称作对数据流图的分层,根据不同的需求采用不同的表示方法。CDFG 中的节点可以表示不同的含义,例如表示输入或者输出,表示分支,表示循环,表示子节点,或者表示子函数的调用等。2.2.2 Katsevich FBP算法的CDFG提取从上面分析可以看出,Katsevich FBP 三维图像重建公式可以根据其具体每一步的运算,将公式分为六个小步骤,这六个部分代表着不同的运算方式,所以在
46、进行控制数据流图提取的过程中,我们可以按照这六部分分别来提取。这样的分块,更有利于进行定点化研究。(1) 对于第一部分求导,我们采用链式求导法。链式求导法就是用来求导符合函数,在这过程中,指定一个函数作为另一个函数的自变量14。如链式求导法的公式为式(2-13):ddx f (g (x) f(g (x)g(x) (2-13 )在微分中,导数的定义其实是用差商来表示的,在几何学上,斜率的概念可以很好地解释导数的定义,同样的,在物理学中,加速度可以很好地解释导数的定义。下面给出差商形式的求导:f(x ) limh 0f(x h ) f(x )h limh 0 limh 0f(x ) f(x h )
47、hf(x h ) f(x h )2h(2-14 )在下面的步骤中,主要是利用差商形式来提取数据控制流图。利用(2-13 )时求导部分的(2-6)进行推导,得到:q g f (q, u, w) |qs ( quq g fwwq ) q s (2-15 )- 11 -f v,eu2 D2g f uwg f哈尔滨工业大学工学硕士学位论文其中,由于数据是在平板式探测器上接收到的数据,所以需要进行必要的坐标变换,假定局部坐标系为 (u, v, w) ,坐标的单位矢量表示为:eu (s) sin(s), cos(s),0Tev (s) cos(s), sin(s),0Tew 0,0,1T(2-16 )(2
48、-17 )(2-18 )eu (s) 是 u 的单位矢量,e v (s) 是源点 y(s) 指向探测板坐标中心的单位矢量,ew 是 w 的单位矢量。由上面的三个坐标,得到uq D Df ,euf ,evf ,euf ,ev2D 2 u 2 D 2 u 2D 2 D(2-19 )wq uwD (2-20 )所以根据以上坐标变换以后,可以得到最终的公式形式为g1(s, u, w) ( g fq Du Dw ) |qs (2-21 )在数据流图提取的过程中,便是针对这个公式(2-21)进行,在实际硬件应用的过程中,因为探测板上接收的数据时离散的,所以公式还要根据具体情况改变。经过坐标变化和链式求导法则的应用,可以将式(2-21)变换为:g1k , i, j d u 2 D 2D du uD d (2-22 )其中d ( g 0k 1, i, j g 0k , i, j g 0k 1, i, j 1 g 0k , i, j 1 g 0k 1, i 1,