如何在Matlab中从世界坐标转换为像素索引



我有512x512x313体积的dicom图像,我有一个用世界坐标表示的点,比如(57.7475 63.4184 83.1515),我如何在Matlab中获得该世界坐标的对应像素坐标??

我不想打破你的泡沫,但你所要求的是不可能的。我能想到的唯一方法是,如果校准用于捕捉图像的相机,就可以在哪里获得真实世界坐标和像素坐标之间的对应关系。一旦你知道了内在和外在的参数,你就有了一个变换矩阵,可以将真实世界的坐标映射到像素坐标。

我假设你没有相机的校准信息,所以另一种方法是知道图像中的哪些像素映射到真实世界的坐标。你需要知道那些在真实世界和你的图像之间映射的点之间的点对应关系。一旦你知道了这一点,你就会通过最小二乘法计算相机变换矩阵,然后你会使用这个矩阵来确定哪些点从真实世界映射到你的图像。

除非你的每个现实世界坐标都有像素对应关系,否则你不可能按照你的要求去做。

FWIW,如果你想了解如何获得变换矩阵的过程,请查看以下注释:http://www.peterhillman.org.uk/downloads/whitepapers/calibration.pdf.当我开始学习相机校准时,这对我来说是一个很好的起点。看看第5节(第8页),因为我相信这就是你想要的。。。。但你需要在真实世界的坐标和你的图像之间有对应关系。

祝你好运!

最新更新