c语言如何读取图像的大小,用c语言读取固定大小的raw格式图像并统计灰度值-程序员宅基地

技术标签: c语言如何读取图像的大小  

目的:

1.读取【256*256】大小的raw格式图像

2.统计灰度值

3.将结果写回result.txt

代码:

方法一

#include

#include

void main()

{

int i,j;

FILE *fp;  //指向文件的指针

fp=fopen("Lena.raw","rb");  //打开文件。注意raw格式图像要以只读二进制流的形式打开

if(!fp)

{

printf("ERROR!\n");

}

unsigned char *pData=new unsigned char[256*256]; //注意:raw图像用无符号char型读入

fread(pData,sizeof(unsigned char),(256*256),fp);  //fread具体用法见msdn

fclose(fp); //取消fp指针指向

int value[256]={0}; //声明并初始化存灰度值的数组

for(i=0;i

{

value[pData[i]]++;

}

printf("灰度值\t\t大小"); //

printf("\n");

fp=fopen("result.txt","wb");

fprintf(fp,"灰度值\t\t大小\r\n");//注意\r\n 否则不能换行!

for(j=0;j<256;j++)  //将结果输出到txt中

{

printf("%d\t\t%d\n",j,value[j]);

// fwrite(value,sizeof(int),256,fp);

fprintf(fp,"%d\t\t%d\r\n",j,value[j]);  //注意\r\n 否则不能换行

}

delete[] pData;//删除空间

fclose(fp); //关闭txt文件

}

方法二:

#include #include int value[256]={0}; int fread(unsigned char *pData)  //把声明的那个数组空间指针作为参数来回传 { FILE *fp; fp=fopen("Lena.raw","rb"); if(!fp) { printf("Read ERROR!\n"); } fread(pData,sizeof(unsigned char),(256*256),fp); fclose(fp); return 0; // } int fchuli(unsigned char *pData) {   for(int i=0;i

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39751391/article/details/117041440

智能推荐

mysql mvcc limit_MySQL MVCC - 多版本并发控制-程序员宅基地

文章浏览阅读76次。前言前段时间在看《高性能 MySQL》的时候了解到了多版本并发控制(MVCC)这个概念,然而,书上对这个概念的解析只有不到两页纸……于是乎,我又到网上去找了一下相关的资料,发现 MVCC 在 MySQL 中应该算是很重要的一个功能了,所以就来总结一下( ̄︶ ̄)概念MVCC 多版本并发控制,顾名思义,是用于实现并发控制的一种机制,而在数据库中,并发控制往往是针对 事务 来进行的,因此, 在了解 M..._mysql up_limit_id概念

nameidata路径查找辅助结构-程序员宅基地

文章浏览阅读5.1k次,点赞4次,收藏10次。转自:http://blog.sina.com.cn/s/blog_4a2f24830100l2h4.html根据路径名寻找目标节点的dentry 下面来研究文件系统中的一个非常关键的操作:根据路径名寻找目标节点的dentry。 例如要打开/mnt/win/dir1/abc 这个文件,就是根据这个路径,找到目标节点 ‘abc’ 对应的 dentry ,进而得到 ino_nameidata

Java ReentrantLock 详解_reentrantlock.trylock(5, timeunit.seconds)-程序员宅基地

文章浏览阅读602次。ReentrantLock 和 synchronized 的区别:1.ReentrantLock 不需要代码块,在开始的时候lock,在结束的时候unlock 就可以了。但是要注意,lock 是有次数的,如果连续调用了两次lock,那么就需要调用两次unlock。否则的话,别的线程是拿不到锁的。 /** * 很平常的用锁 没有感觉reentrantlocak 的强大 ..._reentrantlock.trylock(5, timeunit.seconds)

React中的bind_react .bind-程序员宅基地

文章浏览阅读2k次。作用:需要在事件处理程序中访问父组件,同样需要把该函数绑定到组件。如何将函数绑定到组件实例,可以使用以下几种方法:1.Constructor中绑定(ES2015)constructor(props) { super(props); this.handleClick = this.handleClick.bind(this); }2.在Render中使用bind..._react .bind

Android开发者必须深入学习的10个开源项目-程序员宅基地

文章浏览阅读288次。Android开发又将带来新一轮热潮,很多开发者都投入到这个浪潮中去了,创造了许许多多相当优秀的应用。其中也有许许多多的开发者提供了应用开源项 目,贡献出他们的智慧和创造力。学习开源代码是掌握技术的一个最佳方式。下面推荐几个应用开源项目,这些项目不仅提供了优秀的创意,也可以直接掌握 Android内核的接口使用:1.Android团队提供的示例项目如果不是从学习Android SD

Linux Shell expect 自动切换用户,自动输入密码,执行命令_sh脚本自动输入密码后执行下一句-程序员宅基地

文章浏览阅读5.2k次。1 #!/usr/bin/expect -f23 set timeout 304 spawn ssh -l root 172.21.11.1605 expect “password:”6 send “1qaz@WSX\r”789 expect “#”10 send “cd /home/ls\r”11 send “sh test.sh\r”12 expect ..._sh脚本自动输入密码后执行下一句

随便推点

斗鱼直播第一美女大表姐yesyanbaby如今混吃等死!_斗鱼大表姐-程序员宅基地

文章浏览阅读2w次。斗鱼第一美如今混吃等死,近日,斗鱼第一美如今混吃等死的新闻引发网友关注,大表姐yesyanbaby曾是斗鱼第一美,因颜值高身材好走红,转战王思聪旗下熊猫TV后却没能留住观众,如今混吃等死直播仅千人观看。  都说现在这个社会是个看脸的社会,可颜值真的可以代表一切吗?就拿网络主播来说吧,女主播各个都是花容月貌,但是要想获得网友的喜爱只有颜值就够了吗?  在2014年,那_斗鱼大表姐

基于SSM的图书馆预约占座系统-程序员宅基地

文章浏览阅读3.1k次。如果大家觉得文章对你有所帮助,希望大家点个赞,关注一下,后续我们会更新更多优质内容,大家的支持就是我继续更新的动力。该系统由jsp+ssm+mysql实现,前端采用的是当下最流行的easyui框架,后台用的ssm(spring、springMVC、mybaits)框架,主要实现的功能有:用户管理、菜单管理、角色管理、权限管理、学生管理、教师管理、班级管理、图书馆阅览室管理、学生信用管理、预..._图书馆预约占座系统

利用Python3.x 删除字符串中的特殊字符——即ASCII控制字符_python 去掉 ascii-程序员宅基地

文章浏览阅读2.4w次,点赞2次,收藏15次。利用Python3.x删除字符串中的特殊字符——即ASCII控制字符本文知识点:Python3 文件的读写Ascii控制字符Notepad++展示控制字符问题描述在自然语言处理时,文件中会出现一些控制符例如 - 提示 可以通过Notepad++ 查看 本文的目的就是删掉此种类型的控制符解决办法 利用python读取文件,每次处理一行..._python 去掉 ascii

页面点击自身以外地方关闭弹出层-closest()_click事件 closest-程序员宅基地

文章浏览阅读894次。jQuery关于closest()的详细介绍closest(),支持多个div,可以绑定ID或者类名。当页面发生点击事件时,closest()会匹配选择器,返回匹配到的元素。$(document).bind("click", function (e) { if ($(e.target).closest("#crimeDistri,.contentscss,.layui-lay..._click事件 closest

【基础算法】决策树演算法(Decision Tree)概述及Python实践_decisiontree.ipynb和treeplotter.py-程序员宅基地

文章浏览阅读610次。决策树演算法原理:透过特征值构成树结构来分类,找出在划分数据集时找出哪个特征起到了决定性的作用。目标:分类未知类别的案例,用以理解数据中所蕴涵的知识讯息优点:计算复杂度不高,输出结果易于了解,对中间值的缺失不敏感、可以处理不相关的特征数据缺点:可能有过度匹配的问题适用数据:数值型和标称型输入:未知类别的实例输出:输入实例的类别工作原理从数据集中提取出一系列规则,在每次划分前找出..._decisiontree.ipynb和treeplotter.py

Qt 利用openssl中的ase对文件进行加、解密_qt使用openssl aes加解密-程序员宅基地

文章浏览阅读2.4k次。首先到官网下载openssl文件夹,也可以到下面地址下载百度网盘:https://pan.baidu.com/s/1QmKlMQ2a4qKsCaB1QbsP7A 提取码:fmn7然后在.pro文件中添加代码LIBS += -L"D:/OpenSSL/lib" -llibcrypto //库文件名及其路径INCLUDEPATH += $$quote(D:/OpenS..._qt使用openssl aes加解密

推荐文章

热门文章

相关标签