24小时热门版块排行榜    

查看: 1548  |  回复: 11

xmcrobbie

银虫 (小有名气)

[求助] 那个滤波的效果好? 已有2人参与

最近被gabor整死,我自己写个卷积用c语言实现了0角度就是水平方向的gabor滤波器,同样的参数,再用matlab语言写了一遍,滤波的效果结果就是不一样?大家帮忙看看那个效果好,二者主要的差别就是,在matlab的卷积函数我是调用conv2,而c语言的卷积函数是我自己写的。。我一直觉得用c语言写那个效果好,可是用c语言写的程序,最后去求纹理,对图像进行分类,就是比不上用matlab写的。难道是卷积的问题??? 第一张图片是C语言实现的,第二张图片是用matlab实现的
那个滤波的效果好?
cJPG


那个滤波的效果好?-1
matlab.JPG
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

kaixinla168

银虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
楼主能把程序贴出来看看吗?
3楼2014-01-24 09:18:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

icecho

木虫 (正式写手)

为什么滤出来,两张反着呢?
不会是输入也不是同一张?
2楼2014-01-24 08:01:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xmcrobbie

银虫 (小有名气)

引用回帖:
2楼: Originally posted by icecho at 2014-01-24 08:01:18
为什么滤出来,两张反着呢?
不会是输入也不是同一张?

反着是我没处理好宽度排列的问题。这是水平方向的虑波啊,所以明显用c好!

[ 发自小木虫客户端 ]
4楼2014-01-24 10:36:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xmcrobbie

银虫 (小有名气)

引用回帖:
3楼: Originally posted by kaixinla168 at 2014-01-24 09:18:06
楼主能把程序贴出来看看吗?

for (i = 0; i < height + 8; i++)
                {
                    for ( j = 0; j < width +  8; j++)
                    {
                        for (int k = -8; k < 8; k++)
                        {

                            double temp = 0.0;
                            for (int l = -8; l < 8; l++)
                            {
                                                       
                                                               
                                                                int x1 = i + k;
                                                                int y1 = j + l;

                                                                int x2 =  k + 8
                                                                int y2 =  l + 8;

                                                                if ( x1  < 0  )
                                                                         x1 = 0;
                                                                if ( y1 < 0 )
                                                                         y1 = 0;
                                                                if ( x1 >=height)
                                                                        x1 = height-1;
                                                                if ( y1 >=width)
                                                                        y1 = width -1;
                                                                 else
                                                                        temp = gray[x1][y1];

                                                       
                                                                result1[j] += GReal_On[x2][y2] * temp;
                                                                result2[j] += GImg_On[x2][y2] * temp;

                                                               
                                
                                
                            } //end for l

                        } // end for k
                                       
                    } // end for j
                } // end for i
5楼2014-01-24 10:46:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xmcrobbie

银虫 (小有名气)

引用回帖:
5楼: Originally posted by xmcrobbie at 2014-01-24 10:46:49
for (i = 0; i < height + 8; i++)
                {
                    for ( j = 0; j < width +  8; j++)
                    {
                        for (int k = -8; k < 8; k++)
     ...

我是参照opencv的cvfilter2D的原理写的。
6楼2014-01-24 10:47:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kaixinla168

银虫 (正式写手)

【答案】应助回帖

用conv2计算的二维卷积结果是方阵,你的程序不知道是不是方阵?
7楼2014-01-24 11:28:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xmcrobbie

银虫 (小有名气)

引用回帖:
7楼: Originally posted by kaixinla168 at 2014-01-24 11:28:12
用conv2计算的二维卷积结果是方阵,你的程序不知道是不是方阵?

是呀,二维卷积本来结果就是矩阵!

[ 发自小木虫客户端 ]
8楼2014-01-24 11:47:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kaixinla168

银虫 (正式写手)

引用回帖:
8楼: Originally posted by xmcrobbie at 2014-01-24 11:47:15
是呀,二维卷积本来结果就是矩阵!
...

建议你检查一下两种方法获得结果的维数是否相同,或者干脆检查两种卷积的结果是否相同
9楼2014-01-24 12:44:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xmcrobbie

银虫 (小有名气)

引用回帖:
9楼: Originally posted by kaixinla168 at 2014-01-24 12:44:34
建议你检查一下两种方法获得结果的维数是否相同,或者干脆检查两种卷积的结果是否相同...

不同,卷积原理都不同!

[ 发自小木虫客户端 ]
10楼2014-01-24 13:03:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 xmcrobbie 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[公派出国] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 PbwVEMK5haaE 2026-08-25 4/200 2026-08-26 03:20 by cNXvBfCpiZOM
[考博] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 Qj98d49dHFb9 2026-08-25 4/200 2026-08-26 03:08 by cNXvBfCpiZOM
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 7K1CJE38xLG4 2026-08-25 4/200 2026-08-26 02:04 by cNXvBfCpiZOM
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 7K1CJE38xLG4 2026-08-25 4/200 2026-08-26 02:04 by cNXvBfCpiZOM
[基金申请] 放榜前的不淡定 20+4 snowwithsea 2026-08-19 19/950 2026-08-25 17:57 by chick875
[基金申请] 2026国自然函评费到账 +20 羊腰板 2026-08-21 23/1150 2026-08-25 16:34 by zsna
[基金申请] 如果此刻你正在为国基感到焦虑,不妨来听听这首《基金之外》 +8 scalable 2026-08-24 8/400 2026-08-25 12:52 by jnhyjjm
[基金申请] 没有任何消息-是不是就凉了 +9 图啦图啦 2026-08-24 10/500 2026-08-25 11:59 by 南海小哥
[基金申请] 人气不行了 +11 fansofjerry 2026-08-21 11/550 2026-08-25 11:04 by 孤独的英雄6
[基金申请] 2026年的国家社科基金项目通讯评审的新规则与新动向、新挑战 +5 process2012 2026-08-23 7/350 2026-08-25 09:42 by huixian257
[基金申请] 今天基金会出结果吗?20260819 +17 kkkl_v 2026-08-19 18/900 2026-08-25 09:41 by windflowerwy
[基金申请] 我面上完蛋了 +13 且听虎啸 2026-08-20 14/700 2026-08-25 09:10 by mrkang
[基金申请] 范进中举一文的中心思想 +7 炎黄贵胄 2026-08-22 8/400 2026-08-25 08:48 by ZJTJZ
[基金申请] 只有每年这种时候来逛逛小木虫 +25 yaoyewhu2008 2026-08-20 27/1350 2026-08-25 08:01 by Equinoxhua
[基金申请] filecode,4个jtjc了 +14 ziyangfang 2026-08-19 17/850 2026-08-24 18:37 by 哈哈蛤?
[教师之家] 跳槽后在研项目怎么办? +5 简单化xn 2026-08-22 10/500 2026-08-23 12:38 by 简单化xn
[基金申请] 今天放榜吗? +15 布布和一二 2026-08-19 16/800 2026-08-23 09:55 by 张春生
[基金申请] 时间戳今天,20号变了 +5 archvillain 2026-08-20 5/250 2026-08-22 06:12 by hui_daxiao
[基金申请] 时间戳又变了 +13 wuchongjun 2026-08-20 19/950 2026-08-21 17:21 by 紫杉醇
[基金申请] 基金啊基金 +4 longfie172 2026-08-20 4/200 2026-08-21 08:58 by mark mao
信息提示
请填处理意见