24小时热门版块排行榜    

查看: 2161  |  回复: 19
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

jjgy_2002

木虫 (著名写手)

[交流] 【求助】因不能追加赏币重新发帖:急求Tchebichef矩不变量或Krawtchouk矩不变量代码 已有3人参与

因不能追加赏币重新发帖:
150金币急求Tchebichef矩不变量或Krawtchouk矩不变量代码,matlab,c,c++的都行。麻烦anyuezhiji和其他虫友辛苦辛苦给出正确结果代码,本人不胜感激,谢谢啦~~~

原帖见下面链接:
http://muchong.com/bbs/viewthread.php?tid=1957402&fpage=1
相关资料:
已上传T不变矩的资料,‘Image Analysis by Tchebichef Moments’这篇为经典的T矩文献,但里面没有涉及不变矩;其他几篇涉及T不变矩,最后一篇‘Image Analysis by Krawtchouk Moments’关于K不变矩的经典文献,与T矩类似,如能把K不变矩的代码编写出来并利用K不变矩对图像进行重构也行。能把K不变矩代码编好,T不变矩的就更没问题。下面是文献链接:
1http://d.namipan.com/d/(very%20g ... 5b0da3b37027c510300
2http://d.namipan.com/d/(muse%20s ... 361e9c2c8dbcecf0300
3http://d.namipan.com/d/Image%20A ... 385a3c14271526d0c00

[ Last edited by jjgy_2002 on 2010-5-2 at 10:35 ]
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijinfeng042

木虫 (小有名气)

Matlab

★ ★ ★ ★
zzuwangshilei(金币+2):多谢专家解释 2010-06-06 15:59:10
jjgy_2002(金币+50):非常感谢lijinfeng042的辛勤付出!我需求的是k不变矩,并利用其进行图像重构。 2010-06-16 12:08:46
robert2020(金币+2):辛苦了! 2010-06-16 12:36:24
引用回帖:
Originally posted by lijinfeng042 at 2010-06-05 22:27:42:

我有疑问啊 想了两天了 呵呵 卡住 就是 -N 那不是pochhammer函数没意义? 求解答 毕竟我不是专业的哦 不知理解是否有误

呵呵 到这里终结了 剩下的问题我就不懂了 我没学过图形处理 抱歉了
经画图 结果和你提供的文献Image Analysis by Krawtchouk Moments.pdf对比 应该是正确的
先上程序
CODE:
%关于不动点Krawtchouk
%2010-06-05 by lijinfeng042

%hypergeometric functions (2F1)
%hypergeom([a,b],c,z) is the Gauss hypergeometric function 2F1(a,b;c;z).
%K1=Kn(x;p,N)=hypergeom([-n,-x],-N,1/p)
%p1=ρn(n;p,N)=((p-1)/p)^n*n!/(gamma(-N+n)/gamma(-N))
%w1=ωn(x;p,N)=binomial(N,x)*p^x*(1-q)^(N-x))
%K=Kn(x;p,N)*sqrt(ωn(x;p,N)/ρn(n;p,N))
%  warming;0
function K=Kraw(n,x,p,N)
if x> N
     error('MATLAB:nchoosek:KOutOfRange','Kraw(n,x,p,N) x must be an integer between 0 and N.');
end
K1=hypergeom([-n,-x],-N,1/p);
p1=gamma(n+1)*((p-1)/p)^n/proohc(-N,n);
w1=nchoosek(N,x)*p^x*(1-p)^(N-x);
K=K1*sqrt(w1/p1);
end

CODE:
function prooh=proohc(a,n)
%给出 Pochhammer 符号函数 (a)_n。
%只针对a,n是整数的情形
%2010-06-05 by lijinfeng042

    if a+n>a
      prooh=prod(a:a+n-1);
    else
         prooh=prod(a+n,a);
    end

end

CODE:
%作图
c=[];x=1:100;
for i=x;
    y=Kraw(1,i,0.3,100);
    c=[c y];
end
line(x,c)

CODE:
%Krawtchouk moments
%Kmn=symsum(symsum(K(n,x,p1,N-1)*K(m,y,p2,M-1)*f(x,y),0,M-1),0,N-1)
%Krawtchouk Moment Invariants
%Mmn=symsum(symsum(x^n*y^m*f(x,y),0,M-1),0,N-1)

function K=Krawtchouk_Moment(n,m,x,y,p1,p2,N,M,f)
% 对于一幅大小为N*M的数字图像f,用f(x,y)
% 表示坐标(x,y)点像素的灰阶,则该数字图像的n+m阶Krawtchouk矩为:Kmn
%---------------云是风的梦  2010-06-06
syms MM NN
ff=inline(f,'x','y');
Kmn=symsum(symsum(Kraw(n,x,p1,N-1)*Kraw(m,y,p2,M-1)*feval(ff,x,y),MM,0,M-1),NN,0,N-1);%双重求和
K=vpa(Kmn,10);%显示小数结果
end

唉 实在是看外国文献给弄恐惧了 第一次看如此多的英语文献啊,还是如此的专业

[ Last edited by lijinfeng042 on 2010-6-6 at 13:13 ]
工作了,偶尔会上来~可以关注新浪微博 @云是风的梦_Matlab
17楼2010-06-05 23:48:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 20 个回答

jjgy_2002

木虫 (著名写手)

急啊~~~
2楼2010-05-02 15:04:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jjgy_2002

木虫 (著名写手)

3楼2010-05-05 21:59:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jjgy_2002

木虫 (著名写手)

5楼2010-06-01 10:26:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见