gpt4 book ai didi

image - 如何在 matlab 中将图像划分为 64 block

转载 作者:行者123 更新时间:2023-12-04 18:30:29 25 4
gpt4 key购买 nike

我想为每个图像计算颜色布局描述符 (CLD)。该算法包括四个阶段。在第一阶段,我必须将每个图像划分为 64 个 block i(8×8)n,以便从每个 block 中计算出一个单一的代表颜色。我尝试使用(For 循环)将图像划分为 64 个 block ,但我得到 64婷形象。我想获得具有(8×8) block 的图像,以便通过应用 DCT 变换然后 Zigzag 扫描来完成算法

最佳答案

将图像分成 block 然后对其进行一些处理的一种方法是使用内置函数 BLOCKPROC (在旧版本的 Matlab 中称为 blkproc)。

%# find block length in order to get 64 blocks
imageSize = size(img);
blockLen = round(imageSize(1:2)/8);

%# apply a function to each block
out = blocproc(img,blockLen,@myFunction)

myFunction 是您要应用到每个 block 的函数。您可以将其定义为代码的子函数、单独的 m 文件或匿名函数。输出将连接在一个 8x×8x 数组中,其中 x 是函数输出的大小。 myFunction 应该有一个输入参数,blockStruct,它是一个包含字段 data 的结构,其中包含 block 的像素值,以及字段borderblockSizeimageSizelocation

关于image - 如何在 matlab 中将图像划分为 64 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5207960/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com