Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image 在大型矩阵中将UINT32分解为uint8s_Image_Matlab_Matrix - Fatal编程技术网

Image 在大型矩阵中将UINT32分解为uint8s

Image 在大型矩阵中将UINT32分解为uint8s,image,matlab,matrix,Image,Matlab,Matrix,对于我正在进行的一个项目,我正在加载大型图像文件,这些文件由Matlab作为uint8s的LxWx3阵列输入。我有一个函数,可以将这些组件连接到UINT32的LxWx1数组中,但是如果不使用嵌套for循环,我找不到一种方法来实现相反的操作,这对于我正在使用的矩阵来说太慢了 有人能推荐一种方法来充分实现这一点吗?基本上,给定uint32的LxW矩阵,我想返回uint8s的LxWx3矩阵,其中(x,y,1:3)分量是对应uint32中最重要的三个字节。您可以使用: 例如:对于A=uint32([2^

对于我正在进行的一个项目,我正在加载大型图像文件,这些文件由Matlab作为uint8s的LxWx3阵列输入。我有一个函数,可以将这些组件连接到UINT32的LxWx1数组中,但是如果不使用嵌套for循环,我找不到一种方法来实现相反的操作,这对于我正在使用的矩阵来说太慢了

有人能推荐一种方法来充分实现这一点吗?基本上,给定uint32的LxW矩阵,我想返回uint8s的LxWx3矩阵,其中(x,y,1:3)分量是对应uint32中最重要的三个字节。

您可以使用:

例如:对于
A=uint32([2^16 2^30;256 513])

结果是

B(:,:,1) =
    1    0
    0    0
B(:,:,2) =
    0    0
    1    2
B(:,:,3) =
    0    0
    0    1

很高兴它对你有用。它应该很快,因为它(可能)不涉及算术运算
A =
       65536  1073741824
         256         513
B(:,:,1) =
    1    0
    0    0
B(:,:,2) =
    0    0
    1    2
B(:,:,3) =
    0    0
    0    1