【图像压缩】基于matlab二叉树和优化截断(BTOT)遥感图像压缩【含Matlab源码 2043期】

本文介绍了一种基于二叉树管理和四向递归二分法的图像压缩方法,用于井下图像数据处理。通过预处理、分割多边形、编码与解码,实现了高压缩比和主观质量的提升。MATLAB代码示例展示了从原始图像到压缩重建的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

💥💥💥💥💥💥💞💞💞💞💞💞💞💞欢迎来到海神之光博客之家💞💞💞💞💞💞💞💞💥💥💥💥💥💥
在这里插入图片描述
✅博主简介:热爱科研的Matlab仿真开发者,修心和技术同步精进;
🍎个人主页:海神之光
🏆代码获取方式:
海神之光Matlab王者学习之路—代码获取方式

⛳️座右铭:行百里者,半于九十。
更多Matlab图像处理仿真内容点击👇
Matlab图像处理(进阶版)
付费专栏Matlab图像处理(初级版)

⛳️关注优快云海神之光,更多资源等你来!!

⛄一、二叉树图像压缩简介

数字图像处理和编码压缩技术经过几十年的发展 , 已逐渐成熟并应用于数字通讯和信息处理之中。 随着计算机图形学和图像处理技术广泛应用到了工业生产的各个部门,对图像压缩技术提出了更高的要求。 如何充分利用图像分析和理解方法,合理地分解图像信号、提高压缩 比、降低 主观失真度 ,是当前图像编码研究的热门之一 。 新近在数字图像处理领域提 出的根据图像 区 域灰度分布特点 , 在二叉树管理之下 , 以一定的误差限度为准则,采用 四向递归二分法,逐渐将图像表面划分为若干个凸多边形,使之逼近原始图像,可获得较好的压缩效果。当多边形数目足够多时 ,它们的周边可体现图像的边缘特点,它们的形状、位置和平均灰度可反映图像的主要特点 , 通过对多边形 的平均灰度和划分方法进行编码,可以获得较高的压缩比。 基于上述思想的编码流程如下:
在这里插入图片描述
首先将原始图像经去噪等适当的预处理后,按四向递归二分法对图像进行分割,得到许多凸多边形,然后对它们进行编码,以便最大限度地压缩数据 。 经信道传输将数据送到地面后,对数据进行解码, 由解码后的数据重建图像并进行必要的后处理。图像的分割设原图为,可通过最小平方误差准则及四向递归二分法将图像分为和两个子图,使
在这里插入图片描述
为最小,其中为区域内图像灰度的均值。 对、作同样的分割,如此下去可在满足给定误差要求的条件下将分割成个子图。 编码、解码及后处理图像分割过程的规律性和递归性不仅简化了运算,也提高了编码的效率, 对最终的叶节点采用霍夫曼编码, 对中间的内节点采用变字长编码 。 此编码方法以多边形代替原图中相关性较 强的区域 , 其基本出发点仍是信源的统计特性和冗余度 。 图像分割采用非线性方法,结合视觉特性 ,考虑人类对方向的敏感性及纹理特性,以几何失真代替量化失真 ,可获得较好的主观质量和编码效率,提高了压缩 比。 按约定解码后,当用灰度的均值填充多边形后,代替原 图灰度会产生较明显的块状效应,此时可对相邻多边形的边界进行必要的灰度平滑处理,提高信噪比和视觉效果。 区域基图像编码方法,适应处理井下图像 ,压缩比较大时仍能使图像质量较好 。 图像分解主要使用计算机图形学的多边形处理技术 , 便于硬件实现提 高速度 。 井下摄取的图像数据压缩后送回地面 , 可有效地减少传输的数据量 , 有利于实现实时处理。

⛄二、部分源代码

clc;clear;
%% ----------- Input ----------------
imname = ‘SanDiego.bmp’;
I_Orig = double(imread(imname));

[row, col] = size(I_Orig);
blksize = 64;

%% ----------- Wavelet Decomposition -------------
n_log = log2(row);
level = floor(n_log);
I_Dec = wavecdf97(I_Orig, level);

n_min = 1;
brates = [0.0625, 0.125, 0.25, 0.5, 1];

%% ----------- Coding ----------------
[out_code, blklen, n_max, n_min, out_S,out_R,out_N] = encode(I_Dec, blksize, n_min);

%% ----------- Decoding ----------------
disp([ ‘aa_BTOT_’ imname(1:end-4) ‘=[’]);
for rate=brates
I_DecR = decode(out_code, blklen, n_max, n_min, blksize, row, rate, out_S,out_R,out_N);

I_Rec = wavecdf97(I_DecR, -level);
MSE = sum(sum((I_Rec - I_Orig).^2))/(row*row);
PSNR = 10*log10(255*255/MSE);
disp([sprintf('%.4f',rate) ' ' sprintf('%.2f',PSNR)]);   

end
disp(‘];’);
figure
subplot(211)
imshow(I_Orig,[])
title(‘原图’)
subplot(212)
imshow( I_Rec,[] )
title(‘压缩图’)
function blkorder = get_blkorder(row,blksize)
%
% Morton scanning order
%

blkorder = int32([1,1]);
levsize = blksize;
while levsize < row
hor = blkorder;
vor = blkorder;
dor = blkorder;

hor(:,2) = hor(:,2) + levsize;
vor(:,1) = vor(:,1) + levsize;
dor(:,1) = dor(:,1) + levsize;
dor(:,2) = dor(:,2) + levsize;

blkorder = [blkorder; hor; vor; dor];
levsize = levsize*2;

end

⛄三、运行结果

在这里插入图片描述

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 冯桂,林其伟.基于区域二叉树压缩方法在井下图像数据处理中的应用[J].1997年中国地球物理学会第十三届学术年会论文集.

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

🍅 仿真咨询
1 各类智能优化算法改进及应用

生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化

2 机器学习和深度学习方面
卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断

3 图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知

4 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化

5 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配

6 无线传感器定位及布局方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化

7 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化

8 电力系统方面
微电网优化、无功优化、配电网重构、储能配置

9 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长

10 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合

文章作者写的matlab源代码,该文章发表在Digital Signal Processing: Ke-Kun Huang , Hui Liu, Chuan-Xian Ren, Yu-Feng Yu and Zhao-Rong Lai. Remote sensing image compression based on binary tree and optimized truncation. Digital Signal Processing, vol. 64, pp. 96-106, 2017. (http://dx.doi.org/10.1016/j.dsp.2017.02.008) 遥感图像数据非常广泛,因此需要通过空间设备上的低复杂度算法进行压缩。具有自适应扫描顺序(BTCA)的二叉树编码是一个的有效算法。然而,对于大规模遥感图像,BTCA需要大量的内存,而且不能随机存取。在本文中,我们提出了一种基于BTCA的新的编码方法。小波图像首先划分为几个块,并由BTCA单独编码的。根据BTCA的属性,仔细选择每个块的有效截断点,以优化速率失真的比例,从而获得更高的压缩比、更低的内存要求随机访问性能。由于没有任何熵编码,所提出的方法简单快速,非常适合于空间设备。对三个遥感图像集进行实验,结果表明它可以显着提高PSNR、SSIMVIF,以及主观视觉体验。 The remote sensing image data is so vast that it requires compression by low-complexity algorithm on space-borne equipment. Binary tree coding with adaptive scanning order (BTCA) is an effective algorithm for the mission. However, for large-scale remote sensing images, BTCA requires a lot of memory, and does not provide random access property. In this paper, we propose a new coding method based on BTCA and optimize truncation. The wavelet image is first divided into several blocks which are encoded individually by BTCA. According the property of BTCA, we select the valid truncation points for each block carefully to optimize the ratio of rate-distortion, so that a higher compression ratio, lower memory requirement and random access property are attained. Without any entropy coding, the proposed method is simple and fast, which is very suitable for space-borne equipment. Experiments are conducted on three remote sensing image sets, and the results show that it can significantly improve PSNR, SSIM and VIF, as well as subjective visual experience.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海神之光

有机会获得赠送范围1份代码

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值