🌍首页
📁归档
⏳时光机
🚩友链
📫留言
📧订阅
🌟推荐
📕考研课程
🏜️ 免费壁纸
❤ 捐助本站
💰资助名单
🎵音乐实验
Search
1
【NPN/PNP三极管】放大电路饱和失真和截止失真的区别
20,217 阅读
2
论文写作中如何把word/wps里面所有数字和字母替换为新罗马字体
10,751 阅读
3
【高数】形心计算公式讲解大全
9,117 阅读
4
Vivado-FPGA Verilog烧写固化教程
8,153 阅读
5
【概论】一阶矩、二阶矩原点矩,中心矩区别与概念
7,891 阅读
🪶微语&随笔
励志美文
我的随笔
工作办公
📡电子&通信
嵌入式&系统
通信&信息处理
编程&脚本笔记
⌨️IC&系统
FPGA&ASIC
VLSI&IC验证
EDA&虚拟机
💻电子&计算机
IP&SOC设计
机器学习
软硬件算法
登录
/
注册
刘航宇(共319篇)
找到
319
篇与
刘航宇
相关的结果
- 第 21 页
2021-04-21
【双语美文】心灵鸡汤学学自信的人都是怎么做的
摘要本文介绍了自信的人如何通过高效、积极追求成功、接受不完美、坚持信念、不畏惧失败等方式在生活中展现自信。关键词:自信, 自我提升, 成功追求, 自我接受, 肢体语言图片 Anyone can adopt the habits confident people practice on a regular basis. Below are just some of the ways those with extra self-possession approach life differently than everyone else. 每个人都能培养自信的人每天做事的习惯,以下就是那些特别镇定自若的人生活中一些与他人不同的做事方法。 {mp3 name="朗读" url="https://f1.w.hjfile.cn/doc/201601/zixinderen060131965.mp3" cover="" theme="#4defed" autoplay="autoplay"/} They're more productive. 他们效率更高。 Confidence = hustle. Research suggests that confident people may be more productive because their can-do thoughts inspire real action. It's no wonder confident people seem to own the office. 信心=抓紧时间。研究显示自信的人可能做事效率更高,因为“我能搞定”的想法鼓励着他们真正行动起来。难怪自信的人看起来好像掌管着整个办公室一样。 Their body language helps boost their confidence. 他们的肢体语言有助于提高自信。 Studies show that how a person carries him or herself influences how he or she feels on the inside. A tall posture and even stretching can help people feel a surge of power -- and confident people take advantage of those little adjustments. 研究显示,一个人表达想法的方式影响着其内心的感受。挺拔的姿态、甚至舒展身体都有助于激发力量,自信的人会利用好这一切。 They aren't self-assured all the time. 他们并不总是自信。 All people have their flaws. The difference lies in recognizing those insecurities and carrying on with life despite them. Research shows self-acceptance is paramount to a happier life, but it's a habit many people rarely practice. Confident people aren't superhuman -- they just accept their imperfections wholeheartedly and live a happy life regardless. 所有人都有缺点,区别就在于要认清不安全的因素,并且继续生活。研究显示,自我接受是生活更幸福的关键,但这也是很多人所缺少的习惯。自信的人不是超人——他们只是真正接受自己的不完美并过着幸福生活,而不去考虑那些。 They actively pursue success. 他们真的在追求成功。 "No" is simply not in a confident person's vocabulary, at least when it comes to success. Confidence is crucial when pursing a career, according to a study published in the journal Basic and Applied Social Psychology. The research found that the more likely someone is able to picture themselves achieving their goal, the more likely they're going to be able to do it. 对于自信的人来说,他们的字典里真的没有“不”这个字,至少在谈及成功时如此。发表在《基础与应用社会心理学》杂志上的研究表明,信心在追求事业时起到决定性作用。这项研究发现,一个人越能幻想自己达成目标,就越有可能获得成功。 They channel their inner celebrity. 他们引导自己向内心的名人看齐。 A confident person's mantra is "I am Beyonce." OK, maybe that's just this author's, but regardless, there's power in celebrity. Research published in the journal Personal Relationships found that when people wrote down qualities they shared with their favorite celebrities of the same gender, they felt much more compelled to become their best selves. 自信之人的咒语是“我是碧昂斯(美国女歌手)”。好吧,可能那只是本作者的想法,但不管怎样,名人效应总是有的。发表在《人际关系》杂志上的研究发现,当人们写下与自己最喜欢的同性别名人所共有的品格时,他们会迫使自己做到最好。 They stick to their convictions. 他们坚持自己的信念。 Confident people place trust in their own opinions -- but not without listening to others, of course. As confidence coach Susie Moore explained in a HuffPost blog, confident people hear all sides of an argument, but ultimately, they stick to what they feel is best. 自信的人信赖自己的想法——当然也不是不听人劝。正如自信导师苏西•摩尔在赫芬顿邮报博客中写道:自信的人会倾听辩论双方的观点,但最终他们会坚持自己看来最好的想法。 "Confident people listen to other people but do not let their difference of perspective take them off track," she wrote. 她写道:“自信的人听别人的说法,但不会让他们观点之间的不同带自己偏离轨道。” They don't fear failure. 他们不害怕失败。 All people have their setbacks. Confidence isn't doing everything right, it's pushing on even after being wrong. Research suggests that people who appear more self-assured are also seem more intelligent. 所有人都会遇到挫折,自信不是做对每件事,而是在做错后仍能勇往直前,研究表明看起来自信的人也似乎更聪明。 They're not afraid of being confident. 他们不害怕自信。 Confident individuals don't shy away from asserting themselves, whether they're actually feeling comfortable or just faking it until they make it. As singer Demi Lovato's recent single so poignantly asks, "What's wrong with being confident?" The answer: Nothing at all. 自信的人不会羞于坚持自己的主张,无论他们是真自信还是假装自信,他们都会坚持如此直到成功。正如歌手黛米•洛瓦特最近的单曲中寓意深刻地问道的那样:“自信有错吗?”答案就是:“何错之有”。
励志美文
刘航宇
5年前
2
832
3
2021-04-19
合同矩阵、二次型满足C^TAC=B求可逆矩阵C一种简单求法
摘要本文介绍了一种简单求法,通过观察矩阵A和B的关系,对单位矩阵进行行和列的交换,得到可逆矩阵C,使得C^TAC=B。关键词:合同矩阵, 二次型, C^TAC=B, 可逆矩阵C, 简单求法合同矩阵、二次型满足C^TAC=B求可逆矩阵C一种简单求法 例题:设A=[0 1 1;1 2 1;1 1 0],B=[2 1 1;1 0 1;1 1 0]求可逆矩阵C使得C^TAC=B? 解答: 观察 A = 0 1 1 1 2 1 1 1 0 B = 2 1 1 1 0 1 1 1 0 A交换1,2行, 交换1,2列即得B 左乘变行右乘变列 所以将单位阵进行对应变化 C = 0 1 0 1 0 0 0 0 1 满足C^TAC=B
我的随笔
刘航宇
5年前
1
2,119
2
2021-04-18
爱要及时说出口【双语美文】
摘要一个患癌症的男孩在生命的最后时刻鼓起勇气向喜欢的女孩表白,留下纸条表达爱意。母亲发现后,男孩已经离世,留下满满一柜子的未拆CD,每张CD里都有一张纸条,男孩用这种方式表达爱意。关键词:及时表达爱意,癌症,青春爱情故事,双语美文,情感故事图片 There was once a guy who suffered from cancer, a cancer that can't be cured. He was 18 years old and he could die anytime. All his life, he was stuck in his house being taken cared by his mother. He never went outside but he was sick of staying home and wanted to go out for once. So he asked his mother and she gave him permission. 曾有一男孩,患了不治之癌。他才18岁,但生命随时会结束。一直以来,男孩都被困在屋子里,由他的母亲照料。男孩从未出去过,但他厌倦了一直窝在家里,想出去走一走。男孩因此询问他的母亲,并得到了母亲的同意。 {mp3 name="朗读" url="https://d3.s.hjfile.cn/2015/201506_4/3a8286f7-5138-4db3-b7ca-c2a008a977d6.mp3" cover="" theme="#f0ad4e" autoplay="autoplay"/} He walked down his block and found a lot of stores. He passed a CD store and looked through the front door for a second as he walked. He stopped and went back to look into the store. He saw a beautiful girl about his age and he knew it was love at first sight. He opened the door and walked in, not looking at anything else but her. He walked closer and closer until he was finally at the front desk where she sat. 男孩出了门,路过了许多家店。经过一家卖CD的音像店时他看了眼前门。男孩停了下来,并走回去又往店里看了看。他看见一个漂亮的女孩,年龄大约和他一般大。男孩意识到他一眼就爱上了这女孩。他打开了这家店的门,走了进去,什么也不看,就只看着她。男孩越走越近,直到来到这女孩坐着的前台。 She looked up and asked, "Can I help you?" 女孩抬起头来问道:“有什么需要帮忙的吗?” She smiled and he thought it was the most beautiful smile he has ever seen before and wanted to kiss her right there. 女孩笑了笑,男孩认为这是他见过的最美丽的笑容,他甚至想当场就亲吻这女孩。 He said, "Uh... Yeah... Umm... I would like to buy a CD." 他说道:“呃…是的…嗯…我想买张CD。” He picked one out and gave her money for it. 男孩随便挑了一张出来并把钱递给女孩。 "Would you like me to wrap it for you?" she asked, smiling her cute smile again.“ 需要我帮你把它包起来吗?”女孩问,脸上又露出可爱的微笑。 He nodded and she went to the back. She came back with the wrapped CD and gave it to him. He took it and walked out of the store. 男孩点了点头,女孩走到前台的后面。回来的时候女孩拿着包装好了的CD,交给了男孩。他拿了过来,然后走出了这家店。 He went home and from then on, he went to that store every day and bought a CD, and she wrapped it for him. He took the CD home and put it in his closet. He was still too shy to ask her out and he really wanted to but he couldn't. His mother found out about this and told him to just ask her. So the next day, he took all his courage and went to the store as usual. He bought a CD like he did every day and once again she went to the back of the store and came back with it wrapped. He took it and when she wasn't looking, he left his phone number on the desk and ran out... 男孩回到了家。从那以后,他每天都会来这家店,买一张CD,然后女孩就给他包装起来。男孩把CD带回家,放进他的衣橱里。他还是很害羞,不敢把她约出来。他真的很想,但是他做不到。男孩的母亲知道了此事后,就告诉他,只管把她约出来就好了。于是第二天,男孩鼓起了全部的勇气,像往常一样来到了店里。像过去那样,他还是买了一张CD,而女孩也还是走到后面,回来的时候再把包装好的CD交给他。男孩接了过来,趁女孩不注意,他把他的电话号码留在了桌子上,然后跑了出去… RRRRRING!!! “铃铃铃铃铃铃…” One day the phone rang, and the mother picked it up and said, "Hello?" 一天,电话响了起来。男孩的母亲接起电话说道,“你好?” It was the girl!!! The mother started to cry and said, "You don’t know? He passed away yesterday..." 是那个女孩!!!男孩的母亲开始哭了起来,说道:“你不知道吗?他昨天就去世了…” The line was quiet except for the cries of the boy's mother. Later in the day, the mother went into the boy's room because she wanted to remember him. She thought she would start by looking at his clothes. So she opened the closet. 电话里安静了下来,只听到男孩母亲啜泣的声音。之后,男孩的母亲来到了他的房间,缅怀她的儿子。男孩的母亲想先看一看男孩的衣物。于是她打开了男孩的衣柜。 She was face to face with piles and piles and piles of unopened CDs. She was surprised to find all these CDs and she picked one up and sat down on the bed and she started to open one. Inside, there was a CD and as she took it out of the wrapper, out fell a piece of paper. The mother picked it up and started to read it. It said: Hi... I think U R really cute. Do u wanna go out with me? Love, Jocelyn. 在她的面前,是一摞又一摞的CD。看到这么多的CD,男孩的母亲感到很惊讶。她随手拿出一张,坐在了男孩床上。她拆开了包装,把CD拿了出来。一张纸条掉了出来。男孩的母亲捡起了纸条,开始读起来。上面写着:你好…我觉得你真的很可爱。你想和我出去约会吗?爱你的,乔瑟琳。 The mother was deeply moved and opened another CD... 男孩的母亲被深深打动了,拆开了另一张CD… Again there was a piece of paper. It said: Hi... I think U R really cute. Do u wanna go out with me? Love, Jocelyn. 又发现了另一张纸条。上面写着:你好…我觉得你真的很可爱。你想和我出去约会吗?爱你的,乔瑟琳。 Love is... when you've had a huge fight but then decide to put aside your egos, hold hands and say, "I Love You." 爱就是…当你万般挣扎过后,把自我放到一边,握住对方的手,说:“我爱你。”
励志美文
刘航宇
5年前
4
533
2
2021-04-10
进程间有名管道通信,并可靠退出
摘要本文介绍了使用管道通信实现两个进程的单机双向通信,并确保可靠退出的方法。通过创建有名管道,并通过fork()创建子进程,实现了A端发送数据,B端接收数据的功能,并通过输入'q'结束所有进程。关键词:进程间通信, 管道通信, 双向通信, 可靠退出, Linux使用管道通信实现两个进程的单机双向通信,并保证可靠退出。免get函数,利用kill结束所有进程办法,小刘原创: 管道程序: 1.随意命名比如 vim g.c复制下面程序,在Linux系统浏览器可以输入本站网址sciarm.com,可以直接复制,不用敲代码。 2.然后 gcc g.c 3../a.out #include "stdio.h" int main() { int ret; ret = mkfifo("./first",0777); if(ret == -1) { printf("create first error\n"); return -1; } ret = mkfifo("./second",0777); if(ret == -1) { printf("create second error\n"); return -2; } return 0; }A端程序 1.同理创建 vim A.c 复制下面程序 2.gcc A.c -o A 3.然后 ./A #include "stdio.h" #include "fcntl.h" #include "string.h" int main() { int pid; int fd; int i; char buf[32] = {0}; pid = fork(); if(pid > 0) // write first { fd = open("./first",O_WRONLY,0777); if(fd == -1) { printf("open first error\n"); return -1; } while(1) { printf("please input send data\n"); scanf("%s",buf); write(fd,buf,strlen(buf)); if(buf[0] == 'q') { kill(pid,9); waitpid(pid,NULL,0); break; } for(i = 0 ;i < 32 ;i ++) { buf[i] = 0; } } close(fd); } if(pid == 0) // read second { fd = open("./second",O_RDONLY,0777); if(fd == -1) { printf("open error\n"); return -2; } while(1) { read(fd,buf,32) ; if(buf[0] == 'q') { kill(pid,9); waitpid(pid,NULL,0); break; } printf("recv from B %s\n",buf); for(i = 0 ;i < 32; i ++) { buf[i] = 0; } } close(fd); } return 0; }B端程序 打开另一个TM命令窗口,也要root模式下 1.同理创建 vim B.c 复制下面程序 2.gcc B.c -o B 3.然后 ./B #include "stdio.h" #include "fcntl.h" #include "string.h" int main() { int pid; int fd; int i; char buf[32] = {0}; pid = fork(); if(pid > 0) // write first { fd = open("./first",O_RDONLY,0777); if(fd == -1) { printf("open first error\n"); return -1; } while(1) { read(fd,buf,32); if(buf[0] == 'q') { kill(pid,9); waitpid(pid,NULL,0); break; } printf("recv from A %s\n",buf); for(i = 0 ;i < 32 ;i ++) { buf[i] = 0; } } close(fd); } if(pid == 0) // read second { fd = open("./second",O_WRONLY,0777); if(fd == -1) { printf("open error\n"); return -2; } while(1) { printf("please input send data\n"); scanf("%s",buf); write(fd,buf,strlen(buf)) ; if(buf[0] == 'q') { kill(pid,9); waitpid(pid,NULL,0); break; } for(i = 0 ;i < 32; i ++) { buf[i] = 0; } } close(fd); } return 0; }打开第三个窗口进入超管模式输入: ps -axj 可以看到4个进程 图片 A端:随便输入一些字符,B就能接收到,输入q,两者4个进程可以全面杀掉 图片 B端: 图片 再次输入: ps -axj 全部杀掉进程图: 图片
嵌入式&系统
# 嵌入式
刘航宇
5年前
3
689
12
2021-04-08
向量组的线性相关性及其判断
摘要本文介绍了N维向量的定义和运算,线性组合的概念,以及向量组的线性相关性和线性无关性的定义与判别方法。此外,还阐述了极大无关组和向量组秩的概念及其求法。关键词:向量组, 线性相关性, 线性无关, 行列式判别, 极大无关组向量组的线性相关性 1.N维向量的定义(注:向量实际上就是特殊的矩阵——行矩阵和列矩阵;默认向量a为列向量)。 2.向量的运算: 图片 3.线性组合 图片 4.向量组的线性相关性 (1)线性相关与线性无关的定义 设 ,若k1,k2,…,kn不全为0,称线性相关;若全为0,称线性无关。 (2)判别方法: ① r(α1,α 2,…,αn)<n,线性相关; r(α1,α 2,…,αn)=n,线性无关。 ②若有n个n维向量,可用行列式判别: n阶行列式|{ Aij}|=0,线性相关(≠0无关) 图片 5.极大无关组与向量组的秩 (1)定义:最大无关组所含向量个数称为向量组的秩 (2)求法:设A=( a1,a2,…,an ),将A化为阶梯阵,则A的秩即为向量组的秩,而每行的第一个非零元所在列的向量就构成了极大无关组。 (3)矩阵的秩等于它的行向量组的秩也等于它的列向量组的秩。
我的随笔
刘航宇
5年前
0
1,712
5
2021-04-06
判断曲线渐近线
摘要本文介绍了曲线的渐近线类型,包括水平、垂直和斜渐近线,并附有相关图形说明。关键词:判断曲线, 渐近线, 水平渐近线, 垂直渐近线, 斜渐近线水平、垂直渐近线 图片 图片 斜渐近线 y=kx+b 图片
我的随笔
刘航宇
5年前
0
808
3
2021-04-04
间断点判断
摘要本文介绍了间断点的判断方法,包括找出无定义点作为间断点,通过左右极限判断第一类和第二类间断点,并区分无穷间断点和非无穷间断点中的可去间断点和跳跃间断点。关键词:间断点, 极限判断, 第一类间断点, 第二类间断点, 跳跃间断点图片 1.找出无定义的点,就是间断点。 2.用左右极限判断是第一类间断点还是第二类间断点,第一类间断点包括第一类可去间断点和第一类不可去间断点,如果该点左右极限都存在,则是第一类间断点,其中如果左右极限相等,则是第一类可去间断点,如果左右极限不相等,则是第一类不可去间断点,即第一类跳跃间断点。如果左右极限中有一个不存在,则第二类间断点。 间断点可以分为无穷间断点和非无穷间断点,在非无穷间断点中,还分可去间断点和跳跃间断点。如果极限存在就是可去间断点,不存在就是跳跃间断点 图片
我的随笔
刘航宇
5年前
0
1,167
5
2021-04-04
范德蒙德行列式的定义及计算
摘要本文介绍了范德蒙德行列式的定义和计算方法,包括其性质和计算步骤。关键词:范德蒙德行列式, 定义, 计算方法范德蒙德行列式的定义及计算 cKNLdg.png图片 cKNHL8.png图片 cKNqeS.png图片
刘航宇
5年前
0
670
3
2021-04-04
博客中动态背景线条跟随鼠标移动,吸附鼠标效果代码
摘要本文介绍了一种通过JavaScript代码实现网页动态背景线条跟随鼠标移动效果的方法。代码可复制到网页的标签上方、下方或网站底部模板文件中,实现鼠标吸附效果。关键词:动态背景线条, 鼠标跟随效果, JavaScript代码, 鼠标吸附效果, 网页特效添加方法:将下方代码复制到网站想添加线条跟随鼠标移动效果的页面上方or下方或添加到网站底部模板文件 foot.htm 里面 <!--代码放置于</body>上or下方--> <script> !function(){ function n(n,e,t){ return n.getAttribute(e)||t } function e(n){ return document.getElementsByTagName(n) } function t(){ var t=e("script"),o=t.length,i=t[o-1]; return{ l:o,z:n(i,"zIndex",-1),o:n(i,"opacity",.5),c:n(i,"color","0,0,0"),n:n(i,"count",99) } } function o(){ a=m.width=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth, c=m.height=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight } function i(){ r.clearRect(0,0,a,c); var n,e,t,o,m,l; s.forEach(function(i,x){ for(i.x+=i.xa,i.y+=i.ya,i.xa*=i.x>a||i.x<0?-1:1,i.ya*=i.y>c||i.y<0?-1:1,r.fillRect(i.x-.5,i.y-.5,1,1),e=x+1;e<u.length;e++)n=u[e], null!==n.x&&null!==n.y&&(o=i.x-n.x,m=i.y-n.y, l=o*o+m*m,l<n.max&&(n===y&&l>=n.max/2&&(i.x-=.03*o,i.y-=.03*m), t=(n.max-l)/n.max,r.beginPath(),r.lineWidth=t/2,r.strokeStyle="rgba("+d.c+","+(t+.2)+")",r.moveTo(i.x,i.y),r.lineTo(n.x,n.y),r.stroke())) }), x(i) } var a,c,u,m=document.createElement("canvas"), d=t(),l="c_n"+d.l,r=m.getContext("2d"), x=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame|| function(n){ window.setTimeout(n,1e3/45) }, w=Math.random,y={x:null,y:null,max:2e4};m.id=l,m.style.cssText="position:fixed;top:0;left:0;z-index:"+d.z+";opacity:"+d.o,e("body")[0].appendChild(m),o(),window.onresize=o, window.onmousemove=function(n){ n=n||window.event,y.x=n.clientX,y.y=n.clientY }, window.onmouseout=function(){ y.x=null,y.y=null }; for(var s=[],f=0;d.n>f;f++){ var h=w()*a,g=w()*c,v=2*w()-1,p=2*w()-1;s.push({x:h,y:g,xa:v,ya:p,max:6e3}) } u=s.concat([y]), setTimeout(function(){i()},100) }(); </script>
我的随笔
刘航宇
5年前
0
385
4
2021-04-01
基于点处理的图像增强matlb实现线性变换和直方图均衡
摘要本文探讨了基于点处理的图像增强方法,包括灰度分段线性变换和直方图均衡化,并使用MATLAB进行实验验证。这些方法旨在改善图像对比度和可读性,提高图像质量。关键词:图像增强, 灰度变换, 直方图均衡化, MATLAB, 图像处理引言 图像增强是图像处理中的基本内容之一,在图像处理中占有非常重要的地位。图像增强是指对图像的某些特征,如边缘、轮廓或对比度等进行强调或尖锐化。当一幅图像曝光不足或过度,造成对比度过小或过大而不能显示具体细节,通过增加这些细节的动态范围改善图像的视觉效果。图像增强可以突出图像中所感兴趣的特征信息,改善图像的主观视觉质量,提高图像的可懂度。 增强的首要目标是处理图像,使其比原始图像更适合于特定应用。图像增强的方法主要分为两类: 空间域增强法和频域增强法。“空间域”一词是指图像平面本身,这类方法是以对图像像素直接处理为基础的;“频率域”处理技术是以修改图像的傅氏变换为基础的。 增强处理可将其灰度范围拉伸到0-255 的灰度级之间来显示,从而使图像对比度提高,质量改善。增强主要以图像的灰度直方图最为分析处理的基础。直方图均衡化能够增强整个图像的对比度,提高图像的辨析程度,算法简单,增强效果好。 基于点处理的图像增强方法有:灰度线性变换、灰度非线性变换、灰度分段线性变换和直方图均衡化,本文主要讨论灰度分段线性变换和直方图均衡化对图像的增强,并用MATLAB进行实验验证。 图像增强的研究意义 图像增强是数字图像处理的最基本的方法之一,它是为了改善视觉效果或便于人或机器对图像的分析理解,根据图像的特点或存在的问题,以及应用目的所采取的改善图像质量的方法或加强图像的某些特征的措施。图像在成像、采集、运输、复制等过程中不可避免地会造成某些降质。如在成像过程中由于光学系统会导致图像失真,不同的光照条件会使图像的曝光度差异很大,运动状态下成像会使图像模糊;而在传输过程中,各种噪声和干扰将污染图像。因此,通常需要对降质的图像进行预处理,以满足后期处理及分析的需要。图像复原是改善图像的一类方法,这类方法会尽可能还原图像的本来面目,追求提高图像的保真度。而图像增强则是一类追求图像可懂度的方法,通过处理有选择地突出某些感兴趣的信息,便于人或机器分析这些信息,抑制一些无用的信息,以提高图像的使用价值。 图像增强处理后的图像比原始图像更适合于具体应用。由于成像和传输过程的差异性很大,决定了图像增强的方法只能有选择性地使用。实际应用时,需要根据所针对的处理图像、需要解决的问题以及最终要达到的效果等情况,合理选择合适的图像增强算法,并做适当的优化。 图像增强处理后的图像比原始图像更适合于具体应用。由于成像和传输过程的差异性很大,决定了图像增强的方法只能有选择性地使用。实际应用时,需要根据所针对的处理图像、需要解决的问题以及最终要达到的效果等情况,合理选择合适的图像增强算法,并做适当的优化。 实验目的 1、了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学理论知识。 2、掌握灰度分段线性变换的图像增强方法。 3、学会用直方图均衡化对图像进行增强。 实验内容 一、灰度分段线性变换 1、理论基础: 在某些情况下,为了将图像灰度级整个范围(AB) 或其中某一段扩展或压缩到另一灰度范围(z1,zk) 质内,称灰度的线性变换。 图片 图片 分段线性变换和灰度的线性变换有点类似,都用到了灰度的线性变换。但不同之处在于分段线性变换不是完全的线性变换,而是分段进行线性变换。将图像灰度区间分成两段乃至多段,分别作线性变换称之为分段线性变换,如图,分段线性变换的优点是可以根据用户的需要,拉伸特征物体的灰度细节,相对抑制不感兴趣的灰度级。图中的(0,a),(a,b),(b,255)等变换区间边界能通过键盘随时做交换式输入,因此,分段线性变换是非常灵活的。它的灰度变换函数如图所示,函数表达式如下: 图片 式中,(a,c)和(b,d)是图中两个转折点坐标。 该变换函数的运算结果是将原图在a和b之间的灰度拉伸到c和d之间。通过选择的拉伸某段灰度区间,能够更加灵活地控制图像灰度直方图的分布,以改善输出图像量。如果一幅图像灰度集中在较暗的区域而导致图像偏暗,可以用灰度拉伸功能来拉伸(斜率>1)物体灰度区间以改善图像质量;同样如果图像灰度集中在较亮的区域而导致图像偏亮,也可以用灰度拉伸功能来压缩(斜率<1)物体灰度区间以改善图像质量。 2、程序设计: clc; clear all; %刘航宇 X1=imread('图片路径'); subplot(2,2,1),imshow(X1);title('原图'); f0=0;g0=0;%折线点赋值 f1=20;g1=10; %参数自己改动,不要完全复制我的 f2=130;g2=180; f3=255;g3=255; subplot(2,2,2),plot([f0 f1 f2 f3],[g0 g1 g2 g3]); axis tight,xlabel('f'),ylabel('g'),title('灰度变换曲线'); r1=(g1-g0)/(f1-f0);%第一段折线的斜率 b1=g0-r1*f0;%计算截距1 r2=(g2-g1)/(f2-f1); b2=g1-r2*f1; r3=(g3-g2)/(f3-f2); b3=g2-r3*f2; [m,n]=size(X1); for i=1:m for j=1:n f=X1(i,j); if(f<f1) g(i,j)=r1*f+b1; elseif(f>=f1)&(f<=f2) g(i,j)=r1*f+b1; else(f>=f2)&(f<=f3) g(i,j)=r3*f+b3; end end end subplot(2,2,3),imshow(g);title('灰度变换后');3、运行结果: 图片 二、直方图均衡化 1、理论基础: (1)直方图的定义 在图像处理中提到的直方图是指灰度直方图。它定义为统计图像中具有某种灰度的像素数目(或频率=像素数目/图像总的像素个数)的函数。灰度直方图概括了图像中各灰度级的含量,提供了原图的灰度值分布情况[12],也可以说给出了1幅图所有灰度值的整体描述。 什么是灰度直方图呢?灰度直方图(histogram)是灰度级的函数,它表示图像中具有每种灰度级的象素的个数,反映图像中每种灰度出现的频率[8]。 设变量r代表图像中像素灰度级。在图像中,像素的灰度级可作归一化处理,这样,r的值将限定在下述范围之内: 0 ≤ r ≤ 1 在灰度级中,r=0代表黑,r=1代表白。对于一幅给定的图像来说,每一个像素取得[0,1]区间内的灰度级是随即的,也就是说r是一个随即变量。假定对每一瞬间它们是连续的随即变量,那么,就可以用概率密度函数pr(r)来表示原始图像的灰度分布。如果用直角坐标系的横轴代表灰度级r,用纵轴代表灰度级的概率密度函数pr(r),这样就可以针对一幅图像在这个坐标系中作一条曲线来。这条曲线在概率论中就是分布密度曲线(见图2.1) 图片 从图像灰度级的分布可以看出一幅图像的灰度分布特性。例如上图中的两个灰度密度分布函数中可以看出: (a)的大多数像素灰度值取在较暗的区域,所以这幅图像较暗,一般在摄影过程中暴光过强就会造成这种后果;而(b)图像的像素灰度值集中在亮区,因此,图像(b)的特性将偏亮,一般在摄影中暴光太脆弱将导致这种结果。当然,从两幅图像的分布来看图像的质量均不理想。 为了有利于数字图像处理,必须引入离散形式。在离散形式下,用rk代表离散灰度级,用pr(rk)代表pr(r),并且有下式成立: 图片 (2)灰度直方图 面积为A的连续图像f(x,y)经数字化后,成为M行N列的数字图象f(m,n)。一般而言,在数字图像f(m,n)中取不同灰度值的像素的数目是不同的。直方图是用于表达图像灰度分布情况的统计图表[4]。其横坐标是灰度值r,纵坐标是出现这个灰度值的概率密度p(r)(对连续图像f(x,y)而言),或者是出现这个灰度值的概率值p(ri)(对数字图像f(m,n)而言),参见图2.3。 图片 图片 (3)直方图均衡化 直方图均衡化是图象增强中点运算的一种最常用的直方图修正法[10]。其实质是减少图像的灰度等级以换取对比度的扩大。它把给定图像的直方图分布改造成均匀直方图分布,其本质是扩大了量化间隔,减少量化级别。因此,会出现这样的效果,原来灰度不同的象素经处理后可能变为相同,形成了一片相同灰度的区域;各区域之间有明显的边界,出现伪轮廓,图像的对比度增加。但是由于在均衡化过程中,原直方图上频数较少的灰度级被并入少数几个或一个灰度级,对应的图像部分将得不到增强。直方图均衡化处理的中心思想是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布[5]。 对于图像的灰度变换,我们这里介绍一种稍微复杂一点的方法,既直方图均衡化。直方图均衡化是灰度变换的一个重要应用,广泛应用在图像增强处理中,它是以累计分布函数变换为基础的直方图修正法,可以产生一幅灰度级分布具有均匀概率密度的图像,扩展了像素的取值动态范围。若像素点的原灰度为R,变换后的灰度为S,需要注意的是R、S是归一化后的灰度值,其灰度变换函数T()为: 图片 2.统计原始图像各灰度级的像素数目nk 3.计算原始图像直方图各灰度级的频率数 4.计算原始图像的累计直方图 5.取整计算:Sk=int[(N-1)tk+k/N] 6.确定映像关系:Sk-->tk 7统计新直方图各个灰度级的像素Nk 8.计算新的直方图:pt(tk)=nk/N 2、程序设计: clear all %预处理,彩图灰度化 PS=imread('图片位置');%读入彩色图像文件 imshow(PS) %显示出来 title('输入的彩色图像') %刘航宇 imwrite(rgb2gray(PS),'PicSampleGray.bmp'); %将彩色图片灰度化并保存 PS=rgb2gray(PS); %灰度化后的数据存入数组 %二、绘制直方图 [m,n]=size(PS); %测量图像尺寸参数 GP=zeros(1,256); %预创建存放灰度出现概率的向量 for k=0:255 GP(k+1)=length(find(PS==k))/(m*n); %计算每级灰度出现的概率,将其存入GP中相应位置 end figure,bar(0:255,GP,'g') %绘制直方图 title('原图像直方图') xlabel('灰度值') ylabel('出现概率') %三、直方图均衡化 S1=zeros(1,256); for i=1:256 for j=1:i S1(i)=GP(j)+S1(i); %算sk end end S2=round((S1*256)+0.5); %将Sk归到相近级的灰度 for i=1:256 GPeq(i)=sum(GP(find(S2==i))); %计算现有每个灰度级出现的概率 end figure,bar(0:255,GPeq,'b') %显示均衡化后的直方图 title('均衡化后的直方图') xlabel('灰度值') ylabel('出现概率') %四、图像均衡化 PA=PS; for i=0:255 PA(find(PS==i))=S2(i+1); %各个像素归一化赋给这个像素 end figure,imshow(PA) %显示均衡化后的图像 title('均衡化后图像') imwrite(PA,'PicEqual.bmp'); %图片格式自己改改,中文描述改改,不要光复制我的程序 3、运行结果: 原图: 图片 图片 图片 图片 4、结果分析: 直方图均衡化是图像增强技术的基本方法,本文分析了这种处理方法的基本理论,并用Matlab 进行实验,结果表明,直方图均衡化在一定程度上改善了图像的对比度差和灰度动态范围,增强了图像的可读性,提高了地物的可分性,有利于进行遥感图像的目视解译。 该算法简单,是一种行之有效的图像增强算法。
通信&信息处理
刘航宇
5年前
1
1,067
6
2021-03-30
常用级数展开式
常用级数展开式
我的随笔
刘航宇
5年前
0
353
2
2021-03-28
∑(-1)^n/n^p和∑1/n^p收敛发散讨论
摘要本文讨论了级数∑(-1)^n/n^p和∑1/n^p的收敛与发散问题,通过分析级数的性质和极限,得出了级数在不同p值下的收敛性结论。关键词:∑(-1)^n/n^p, 收敛发散, 级数收敛, 级数发散, p-级数图片 图片
我的随笔
刘航宇
5年前
0
534
2
上一页
1
...
20
21
22
...
27
下一页