【数据压缩1-2】分析RGB三通道的概率分布,并计算各自的熵

本文探讨了如何通过分析test.rgb文件中RGB三个通道的概率分布,并计算各自熵值,揭示图像色彩特征的复杂性。实验展示了通道间的关系和信息冗余度。

分析RGB三通道的概率分布,并计算各自的熵

【数据压缩1-1】分析浊音、清音、爆破音的时域及频域特性

(一)实验目的

对test.rgb文件分析三个通道的概率分布,并计算各自的熵。

(二)实验思路

已知:

  1. 检验rgb文件:256×256×3=196608byte≈192kb,分辨率均为256*256;
  2. 数据存储格式:rgb文件按每个像素BGR分量依次存放,即rgbrgbrgb……

流程:

  1. 读入一个RGB文件,创建3个空txt文件
  2. 创建3个数组,将R、G、B各分量数据从rgb文件中读出,并保存到3个数组中
  3. 统计三通道颜色值的出现次数,计算概率分布,并写入txt文件
  4. 计算熵并输出

(三)实验代码

#include <iostream>  
#include <stdio.h>  
#include <stdlib.h>  
using namespace std;  
const int Size = 256 * 256;//图像大小  
int main()  
{
   
     
     //打开RGB并存入sum,创建三个空文件  
     FILE* image, * red, * green,*blue;   
     fopen_s(&image, "...\\test.rgb", "rb");  
     fopen_s(&red, "...\\Red.txt", "w");  
     fopen_s(&green, "...\\Green.txt", "w");  
     fopen_s(&blue, "...\\Blue.txt", "w");  
     
     unsigned char sum[256*256*3];  
     fread(sum, 1, 256*256*3, image);  
  
     //定义存放R、G、B分量的数组
     unsigned char
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值