HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2012
0604
名無し画像認識のやり方を教えて下さい><1未解決


名無し

リンク

2012/6/4(Mon) 10:19:20|NO.47028

PCの画面にある画像(キャラクターなど)があるかないかを調べたいのですが、やり方がどうしてもわかりません;

hspcvのcvfacedetectを使えばできると言われたのですが、xmlファイルの作り方が分かりません。どうが作り方を教えて下さいm(__)m



この記事に返信する


cats

リンク

2012/6/4(Mon) 20:45:36|NO.47030

何がやりたいのかは分かりませんがとりあえず画像の比較を使ってみてはどうですか。
このサイトの丸写しですが・・・
http://hsp.tv/play/pforum.php?mode=pastwch&num=11772

#module #deffunc imghclsdel dim IMGHCOLOR,1:return #deffunc imghclsadd int p1, int p2, int p3 if IMGHCOLOR=0{sdim IMGHCOLOR,64,0:IMGHCOLOR.(length(IMGHCOLOR)-1)=""+p1+","+p2+","+p3 }else{:IMGHCOLOR.(length(IMGHCOLOR))=""+p1+","+p2+","+p3:}:return #defcfunc imgh int p1,int p2,array p3, array p4 s2=ginfo(3):s8=0:gsel p3:mref s1,66:s11=ginfo_winx:s12=ginfo_winy:gsel p4:mref s9,66:s13=ginfo_winx s14=ginfo_winy:gsel s2:if (""+p3(0)+","+p3(1)+","+p3(2))!IMGHROOT{IMGHROOT=""+p3(0)+","+p3(1)+","+p3(2) s4=0:dim IMGHROOTTOP,p1+1,p2+1,3:gsel p3(0):repeat p2:s3=0:repeat p1:s10=((s12-1-(s4+p3(2)))*s11+(s3+p3(1)))*3 IMGHROOTTOP.s3.s4.0=peek(s1,s10+2):IMGHROOTTOP.s3.s4.1=peek(s1,s10+1):IMGHROOTTOP.s3.s4.2=peek(s1,s10) s3+:loop:s4+:loop}gsel p4(0):s4=0:s5=1:repeat p2:s3=0:repeat p1:s7=0:foreach IMGHCOLOR if (""+IMGHROOTTOP.s3.s4.0+","+IMGHROOTTOP.s3.s4.1+","+IMGHROOTTOP.s3.s4.2)=IMGHCOLOR.cnt{s7=1}loop if s7!1{s10=((s14-1-(s4+p4(2)))*s13+(s3+p4(1)))*3:s15=peek(s9,s10+2):s16=peek(s9,s10+1):s17=peek(s9,s10) s7=0:foreach IMGHCOLOR:if (""+s15+","+s16+","+s17)=IMGHCOLOR(cnt){s7=1}loop:if s7!1{ if (IMGHROOTTOP(s3,s4,0)=s15)&(IMGHROOTTOP(s3,s4,1)=s16)&(IMGHROOTTOP(s3,s4,2)=s17){s8+}else{s5=0} }else{ s8+} }else{s8+}s3+:loop:s4+:loop:gsel s2:s8=double(s8)/double((p1*p2)):return s8 #global title "比較元画像情報" dialog "bmp;*.jpg", 16, "比較元画像" if stat == 0 : end picload refstr img_w = ginfo_winx : img_h = ginfo_winy dialog "bmp;*.jpg", 16, "比較先画像" if stat == 0 : end screen 1 : title "比較先画像" picload refstr if ( img_w != ginfo_winx ) | ( img_h != ginfo_winy ) { dialog "画像の大きさが違います", 1 end } a1 = 0, 0, 0 : a2 = 1, 0, 0 dialog strf( "%3.2f%%", imgh( img_w, img_h, a1, a2 ) * 100 ) stop
これで画像を比較することができます。



ONION software Copyright 1997-2023(c) All rights reserved.