#include<stdio.h>
#include<math.h>
#define ROW 512
#define COL 512
typedef unsigned char BYTE;
double cal_psnr(BYTE origin[ROW][COL],BYTE output[ROW][COL])
{
int i, j;
double PSNR = , MSE = , MAXI = ;
for (i = ; i < COL; i++) {
for (j = ; j < ROW; j++) {
MSE += (origin[i][j] - output[i][j]) * (origin[i][j] - output[i][j]);
}
}
MSE = MSE/(ROW*COL);
printf("MSE: %f\n", MSE);
PSNR = *log10(MAXI) - *log10(MSE);
return PSNR;
}
int main()
{
FILE *f = NULL;
BYTE output[ROW][COL];
BYTE origin[ROW][COL];
f = fopen("D:\lena512.raw","rb");
fread(origin,sizeof(BYTE),ROW*COL,f);
printf("has already read\n");
for(int i =;i<ROW;i++)
for(int j=;j<COL;j++)
{
if(origin[i][j]>=&&origin[i][j]<=)
output[i][j] = ;
else if (origin[i][j]>&&origin[i][j]<=)
output[i][j] = ;
else if (origin[i][j]>&&origin[i][j]<=)
output[i][j] = ;
else
output[i][j] = ;
}
printf("PSNR: %lf",cal_psnr(origin,output));
fclose(f); return ;
}

lena512.raw 下载地址:https://files.cnblogs.com/files/jzcbest1016/lena512_20171219131444306.rar

.raw文件可以用photoshop打开

均匀量化(lena图)的更多相关文章

  1. Kmeans聚类(lena图)

    lena512.raw 下载地址:https://files.cnblogs.com/files/jzcbest1016/lena512_20171219131444306.rar .raw文件可以用 ...

  2. Lena与数字图像处理

    在数字图像处理中,Lena(Lenna)是一张被广泛使用的标准图片,特别在图像压缩的算法研究中. 黑白Lena图   标准Lena (为什么用这幅图,是因为这图的各个频段的能量都很丰富:即有低频(光滑 ...

  3. o(1)复杂度之双边滤波算法的原理、流程、实现及效果。

    一.引言     双边滤波在图像处理领域中有着广泛的应用,比如去噪.去马赛克.光流估计等等,最近,比较流行的Non-Local算法也可以看成是双边滤波的一种扩展.自从Tomasi et al等人提出该 ...

  4. PS色调均化滤镜的快捷实现(C#源代码)。

    photoshop色调均化功能通常是在进行修片处理前期比较常用的功能之一,其对扩展图像的对比度,增强视觉效果有一定的作用.在很多课本或者文章中,也称这种处理为灰度均衡化.直方图均衡化等等.算法原理都是 ...

  5. HOG matlab练习

    matlab练习程序(HOG方向梯度直方图) HOG(Histogram of Oriented Gradient)方向梯度直方图,主要用来提取图像特征,最常用的是结合svm进行行人检测. 算法流程图 ...

  6. DPM总结

    DPM:Deformable Parts Model(来自http://www.cs.berkeley.edu/~rbg/latent/index.html) 目标检测算法 先计算梯度方向直方图,在用 ...

  7. SVM中图像常用的HOG特征描述及实现

    转摘网址:http://www.cnblogs.com/tiandsp/archive/2013/05/24/3097503.html Hog参考网址:http://www.cnblogs.com/t ...

  8. Matlab图像处理系列1———线性变换和直方图均衡

    注:本系列来自于图像处理课程实验,用Matlab实现最主要的图像处理算法 图像点处理是图像处理系列的基础,主要用于让我们熟悉Matlab图像处理的编程环境.灰度线性变换和灰度拉伸是对像素灰度值的变换操 ...

  9. 更有效率的使用Visual Studio2

    PS色调均化滤镜的快捷实现(C#源代码). photoshop色调均化功能通常是在进行修片处理前期比较常用的功能之一,其对扩展图像的对比度,增强视觉效果有一定的作用.在很多课本或者文章中,也称这种处理 ...

随机推荐

  1. 使用UltraISO制作Centos7 U盘启动盘遇到的坑

    下载.安装UltraISO软件 安装好以后,打开软件 击菜单栏的"文件"选项,再点击"打开"按钮,选择要刻录的系统镜像 点击菜单栏的"启动" ...

  2. Thread.interrupt()源码跟踪

    1 JDK源码跟踪 // java.lang.Thread public void interrupt() { if (this != Thread.currentThread()) checkAcc ...

  3. 什么叫工业4.0,这篇接地气的文章终于讲懂了(ZT)

    原地址:https://www.cnblogs.com/namei/p/6110382.html 笔者早年从事过工业自动化行业,后来去了几个城市,讲过<工业互联网与工业文明史>这门课,以至 ...

  4. dvaJS Model之间的调用

    const Model: ModelType = { namespace: 'namesps', state: { data: {} }, effects: { *fetch({ payload, c ...

  5. laravel withCount 统计关联数量

    roleModel定义关联 hasmany  public function users(){ return $this->hasMany('App\Models\Users', 'role_i ...

  6. CentOS7安装CDH 第十一章:离线升级CDH版本

    相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...

  7. 在openwrt 17.01上编译最新nginx 1.14.2的笔记

    openwrt 17.01源码对应的nginx版本是1.10.2,有些新功能没有,所以需要升级到nginx 1.14.2最新的稳定版 https://github.com/macports/macpo ...

  8. Ubuntu apt-get锁定问题

  9. jade注释

    在jade里面注释是有多种方式的 单行注释,加两个//,跟js里面一样 //h1.title#title imoock jade study => <!--h1.title#title i ...

  10. 运输层7——TCP的流量控制和拥塞控制

    目录 1. TCP的流量控制 2. TCP的拥塞控制 写在前面:本文章是针对<计算机网络第七版>的学习笔记 运输层1--运输层协议概述 运输层2--用户数据报协议UDP 运输层3--传输控 ...