Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.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
Matlab 从块返回到图像+;blockproc_Matlab - Fatal编程技术网

Matlab 从块返回到图像+;blockproc

Matlab 从块返回到图像+;blockproc,matlab,Matlab,我需要可视化blockproc的输出。我使用此函数获取所有块的标签。现在,我想将图像中的每个块设置为输出中相应的标签 代码如下: Feature = blockproc( image , [ 8 8 ] , fun ); %where image is a binary image and fun gives 1 label either 0 or 1 to each block %% Now for each block I want to do the reverse - set the

我需要可视化blockproc的输出。我使用此函数获取所有块的标签。现在,我想将图像中的每个块设置为输出中相应的标签

代码如下:

Feature = blockproc( image , [ 8 8 ] , fun ); 
%where image is a binary image and fun gives 1 label either 0 or 1 to each block

%% Now for each block I want to do the reverse - set the corresponding image coords to 
%% the feature output
我想我可以调用另一个blockproc,它将图像设置为相应的特征值。但我做这件事有困难

%% fun = @(block_struct) block_struct.data = Feature ( counter ) // counter = block no.

有什么方法可以执行上述操作吗?

如果您的
fun
获取一个块并返回一个标签,您可以让它返回一个与输入大小相同的块,如中所示

然后,您的
功能
将与原始图像大小相同

或者,您可以只调整输出大小-使用
imresize
nearest
或者这样做:

Feature2 = kron(Feature, ones(8));

问题是您的初始函数为每个块返回一个值,因此
功能
的大小与
图像
的大小不同,但您希望是这样吗?不,我只想可视化输出。我知道,功能块的大小将取决于块的数量。因此,对于128 X 128图像,我将有256个8X8大小的块,每个块只有一个标签。现在,我想从这些块重建图像,将每个块设置为标签值。这不是真正的“重建”如果您只需要调整输出的大小。@nkjt称之为调整大小:)我的初始图像也是一个二进制图像,因此我希望它将是一个排序的重建…标签可以是1或0,因此第二种方法不起作用。你建议的第一件事可能行得通。我会在接受之前检查一下……你知道克朗做什么吗?如果没有,也许你应该先检查一下,然后再告诉我这是行不通的。少一点敌意会很感激的。我不想说任何负面的话。我不得不通过将第一个函数与实际标签相乘来调整它,它成功了。谢谢你的努力……好吧,如果你在告诉我代码不起作用之前先测试一下代码,我将不胜感激。提示:
ones(8)
只是用于复制块大小,与标签值无关。
Feature2 = kron(Feature, ones(8));