| 查看: 3092 | 回复: 14 | ||||
yibanxinyu铜虫 (小有名气)
|
[交流]
【求助】帮我编个程啊~C语言,C++,Matlab,VB...都行~ 已有4人参与
|
|||
|
拜托各位编程高手帮我编个程啊,高金币悬赏哦~是关于图像处理的,用C语言,C++,Matlab,VB等等都行。 编写处理“K近邻平滑滤波”的程序,原理是:以待处理的像素作为中心,取一个3X3的模板,在模板中选择5个与待处理像素的值最接近的像素,将这5个像素的均值替换原来的像素值。 举个直观的例子吧,给定3X3的模板如下: 2 2 3 6 8 7 (6+7+5+6+8)/5=6.4=6(四舍五入) 5 6 8 最后中心像素值8被6替换。 编程的时候不要用具体的像素值,用代号(比如说a、b、c......)代替就好了。 多谢各位高手了,小女感激不尽啊! [ Last edited by yibanxinyu on 2010-4-25 at 20:37 ] |
» 收录本帖的淘帖专辑推荐
学海无涯! |
» 本帖已获得的红花(最新10朵)
» 猜你喜欢
求个博导看看
已经有17人回复
青基代表作,AAAI之类的A会的special track在国内认可度高吗?还是归为workshop之流?
已经有3人回复
上海工程技术大学【激光智能制造】课题组招收硕士
已经有6人回复
带资进组求博导收留
已经有11人回复
自荐读博
已经有5人回复
上海工程技术大学张培磊教授团队招收博士生
已经有4人回复
求助院士们,这个如何合成呀
已经有4人回复
临港实验室与上科大联培博士招生1名
已经有9人回复
写了一篇“相变储能技术在冷库中应用”的论文,论文内容以实验为主,投什么期刊合适?
已经有6人回复
最近几年招的学生写论文不引自己组发的文章
已经有11人回复
» 本主题相关价值贴推荐,对您同样有帮助:
matlab 积分计算 算不出结果,求帮助!!!
已经有10人回复
c++编程基本思想
已经有176人回复
matlab解微分方程
已经有10人回复
请教关于matlab矩阵转换问题
已经有6人回复
求matlab 解方程的问题
已经有5人回复
急求一个matlab编码,各位如果知道一定要帮我一把啊
已经有10人回复
C++编程,关于循环结构的,大家看看我这程序哪里错了?
已经有21人回复
如何用matlab软件或者用C及C++自己手工编程寻找转折点
已经有12人回复
【求助】求将c语言改写为C++,求教高人啊!
已经有6人回复
【求助】自己写的C语言,突然想看看C++是什么,求助一下。还有C语言和C++有什么区别啊
已经有22人回复
★ ★ ★
resonant(金币+3):感谢提供:-) 2010-05-02 13:06
yibanxinyu(金币+5):非常感谢~ 2010-05-03 21:18
resonant(金币+3):感谢提供:-) 2010-05-02 13:06
yibanxinyu(金币+5):非常感谢~ 2010-05-03 21:18
|
% K近邻平滑滤波 % input - 输入图像矩阵;n - 模板大小(3,5,7...);k - 近邻数 % output - 滤波处理后的图像矩阵 function output = emuchKNNMeanFilter(input, n, k) [row, col] = size(input); edgeWidth = floor(n / 2); output = zeros(row - edgeWidth * 2, col - edgeWidth * 2); for i = 1 + edgeWidth : row - edgeWidth for j = 1 + edgeWidth : col - edgeWidth mask = input(i - edgeWidth : i + edgeWidth,... j - edgeWidth : j + edgeWidth); center = input(i, j); vertex = Matrix2Vertex(mask); neighbour = GetNeighbour(vertex, center, k); output(i - 1, j - 1) = mean(neighbour); end end end % 根据输入的向量与中心值取近邻值 % vertex - 输入向量;center - 中心值;k - 近邻数 % neighbour - 近邻值 function neighbour = GetNeighbour(vertex, center, k) distance = abs(vertex - center); [sortDistance, sortIndex] = sort(distance,1); neighbour = vertex(sortIndex(2 : k + 1)); end % 将矩阵转换为向量 function vertex = Matrix2Vertex(matrix) [row, col] = size(matrix); vertex = zeros(row * col, 1); for i = 1 : row * col vertex(i) = matrix(i); end end 思路与7楼一致 调用方法: 将以上代码存为文件emuchKNNMeanFilter.m,在matlab command window中调用。 例如,有矩阵 a = 164 24 196 119 209 51 200 139 53 23 250 244 125 218 11 129 247 86 103 67 39 20 147 38 224 198 183 42 60 84 181 163 33 191 74 29 211 185 56 85 172 197 3 228 116 78 146 202 调用程序进行处理:b = emuchKNNMeanFilter(a, 3, 5) 得到处理后的矩阵 b = 180.6 61.2 101.6 189.6 126.8 40.4 56.4 171.2 92.2 53.8 56.2 121.2 170.8 132.2 45.2 53.4 191.6 105.8 114.8 60 179.8 95 71.4 164.2 |
8楼2010-05-02 13:03:21
holmescn
金虫 (正式写手)
- 程序强帖: 37
- 应助: 1 (幼儿园)
- 金币: 1918.8
- 散金: 275
- 红花: 1
- 帖子: 699
- 在线: 102.6小时
- 虫号: 913482
- 注册: 2009-11-26
- 性别: GG
- 专业: 凝聚态物性 II :电子结构
2楼2010-04-26 17:17:30
yibanxinyu
铜虫 (小有名气)
- 应助: 0 (幼儿园)
- 金币: 986
- 散金: 41
- 帖子: 120
- 在线: 75.9小时
- 虫号: 919001
- 注册: 2009-12-02
- 专业: 可再生与替代能源利用中的
3楼2010-04-26 20:49:54
holmescn
金虫 (正式写手)
- 程序强帖: 37
- 应助: 1 (幼儿园)
- 金币: 1918.8
- 散金: 275
- 红花: 1
- 帖子: 699
- 在线: 102.6小时
- 虫号: 913482
- 注册: 2009-11-26
- 性别: GG
- 专业: 凝聚态物性 II :电子结构
★ ★ ★
resonant(金币+1):有心才是最重要的。感谢参与交流。 2010-04-27 12:07
wangen994(金币+2):活动期间额外奖励 2010-04-27 20:39
yibanxinyu(金币+2): 2010-04-27 20:54
resonant(金币+1):有心才是最重要的。感谢参与交流。 2010-04-27 12:07
wangen994(金币+2):活动期间额外奖励 2010-04-27 20:39
yibanxinyu(金币+2): 2010-04-27 20:54
|
我可以尝试一下。不过,有deadline吗?因为我的课程也比较紧。不是每天都能coding阿。 而且我也不是CS专业的……每天coding只能是梦想了…… ![]() 另外: 1、只考虑3X3矩阵是不是说只给出关键代码就可以了?其他部分你自己实现吗? 还是需要全部的,可以装载某一个图形的。 2、不用给一个GUI界面吧?我可以写一个CUI界面的。这样简单一点。 [ Last edited by holmescn on 2010-4-27 at 12:53 ] |
4楼2010-04-27 10:32:48
yibanxinyu
铜虫 (小有名气)
- 应助: 0 (幼儿园)
- 金币: 986
- 散金: 41
- 帖子: 120
- 在线: 75.9小时
- 虫号: 919001
- 注册: 2009-12-02
- 专业: 可再生与替代能源利用中的
5楼2010-04-27 20:59:59
6楼2010-04-30 20:00:22
7楼2010-04-30 20:38:26
9楼2010-08-11 11:50:22
10楼2011-11-30 23:24:45







回复此楼
我有风衣
