癌症 CT 图片存储在无符号短数组(一维)中。
我有图片内癌症区域的位置信息,但坐标(x,y)是超像素(128x128 unsigned short)。我的任务是突出这个区域。
我已经通过将超像素坐标转换为可用于无符号短数组的偏移量来解决这个问题。它工作正常,但我想知道是否有更聪明的方法来解决这个问题,因为我的解决方案需要 3 个嵌套的 for 循环。
是否可以“超像素”访问 ushort 数组,所以我可以在超像素中导航 ushort 数组。
我知道这行不通。为了让你知道我在想什么:
typedef struct
{
unsigned short[128x128]
}
spix;
spix *spixptr;
unsigned short * bufptr = img->getBuf();
spixptr = bufptr;
更新1:
是的,它含糊不清,让我再试一次:
[0][1][2] ... [127]| ... [x] |
[1] | |
[2] | |
. | |
. | <-- this is a superpixel
. | |
[127] | |
-------------------- |
. |
. |
. |
[y] |<--whole picture stored in a ushort* buf = new ushort[x*y]
------------------------------
ushorts
我喜欢使用指针一次访问 128x128 ,因此我可以将memcpy
数据放入 128x128 字段。
更新 2:
bitblit 传输提示有很大帮助。