Cuda實現Radon變換

2021-06-18 03:28:09 字數 888 閱讀 9158

有關radon變換的演算法的詳情,寫在這裡:

用cuda實現radon變換,可以類似c語言程式操作。。。

這裡可以簡單的使用乙個block,每個block包含numangles個thread(在下面的**中是181個thread)

#include #include "math.h"

#include "cuda_runtime.h"

#include "device_launch_parameters.h"

__global__ static void radon_cuda_core(float *gpuoutput,float *gpuinput,float *gpuangles,int m,int n,int xorgin,int yorgin,int numangles,int rfirst,int rsize)

int main()

else

i[p*100+k]=0;

} }float *gpu_result;

gpu_result=(float *)calloc(numangles*rsize,sizeof(float));

memset(gpu_result,0,numangles*rsize);

radon_cuda(gpu_result, i, thetaptr, m, n, xorigin, yorigin, numangles, rfirst, rsize);

printf("gpu計算結束。。。\n");

free(i);

free(thetaptr);

free(cpu_result);

free(gpu_result);

getchar();

return 0;

}

Radon變換理論介紹

radon變換的本質是將原來的函式做了乙個空間轉換,即,將原來的xy平面內的點對映到ab平面上,那麼原來在xy平面上的一條直線的所有的點在ab平面上都位於同一點。記錄ab平面上的點的積累厚度,便可知xy平面上的線的存在性。這便是大家所公認的radon變換的實質所在。上述聽起來很在理也很簡單,但卻少了...

學習日誌 radon變換 2017 6 9

畢設運用了hough變換提取儀表影象中的直線,但是太生硬,太粗糙。於是想多學習些直線提取的方法。直線檢測的方法從演算法上分為三類 基於邊緣檢測的直線提取方法 基於假設檢驗策略的直線提取方法 基於空間變換的直線提取方法。hough變換就屬於第三類,今天學習了一些radon變換的知識。定義與理解 兩維情...

Radon變換入門matlab CT原理

簡介 影象投影,就是說將影象在某一方向上做線性積分 或理解為累加求和 如果將影象看成二維函式f x,y 則其投影就是在特定方向上的線性積分,比如f x,y 在垂直方向上的線性積分就是其在x軸上的投影 f x,y 在水平方向上的線積分就是其在y軸上的投影。通過這些投影,可以獲取影象在指定方向上的突出特...