CT投影(距离驱动)运算符的实现? [英] CT projection (distance-driven) operator implementation?

查看:249
本文介绍了CT投影(距离驱动)运算符的实现?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用MATLAB来实现CT(计算机断层扫描)投影算子A,我认为它经常也被称为系统矩阵".

I am trying to use MATLAB to implement a CT (computed tomography) projection operator, A, which I think is also referred as "system matrix" often times.

基本上,对于N x N图像M,可以通过将项目算子与图像相乘来获得投影数据P:

Basically, for a N x N image M, the projection data, P, can be obtained by multiplication of the project operator to the image:

P = AM

和反投影过程可以通过将投影算子的(共轭)转置乘以投影数据来执行:

and the backprojection procedure can be performed by multiplying the (conjugate) transpose of the projection operator to the projection data:

M = A'P

任何人都对如何实现矩阵A有任何想法/示例/示例代码(例如:Radon变换)?我真的很想从一个较小的矩阵开始,比如说8 x 8或16 x 16.

Anyone has any idea/example/sample code on how to implement matrix A (for example: Radon transform)? I would really like to start with a small size of matrix, say 8 x 8, or 16 x 16, if possible.

我的问题确实是:如何实现投影算子,以便通过将算子与图像相乘,可以得到投影,并通过将算子的(共轭)转置与投影相乘,可以得到投影算子.原始图像返回.

My question really is: how to implement the projection operator, such that by multiplying the operator with an image, I can get the projections, and by multiplying the (conjugate) transpose of the operator with the projections, I can get the original image back.

特别是,我想实现距离驱动的投影仪,在这种情况下,光束轨迹(平行,扇形等)将无关紧要.非常简单的示例(首选MATLAB)对我来说是最好的开始.

推荐答案

据我所知,还没有免费的可实现距离驱动的投影机/背投投影机的实现(已获得专利).但是,您可以自己编写代码而没有太多困难.

As far as I'm aware, there are no freely available implementations of the distance-driven projector/backprojector (it is patented). You can, however, code it yourself without too much difficulty.

首先阅读论文并了解投影机的功能.您只需要几个关键部分:

Start by reading the papers and understanding what the projector is doing. There are only a few key parts that you need:

  • 将像素边界投影到轴上.
  • 将检测器边界投影到轴上.
  • 重叠内核.

前两个是简单的几何.在论文中对重叠内核进行了详细的介绍(并且大多数情况下还使用了伪代码).

The first two are simple geometry. The overlap kernel is described in good detail (and mostly usable pseudocode) in the papers.

请注意,您将不会获得进行投影的实际矩阵.该系统对于除最小的示例以外的所有示例而言都太大了.相反,您应该编写一个函数来实现与距离驱动的投影相对应的线性运算符.

Note that you won't wind up with an actual matrix that does the projection. The system would be too large for all but the tiniest examples. Instead, you should write a function that implements the linear operator corresponding to distance-driven projection.

这篇关于CT投影(距离驱动)运算符的实现?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆