🌸 「なでしこ」
>
🍯 「貯蔵庫」
試験 エッジ処理
🌟新規
📒一覧
🔌
🔍検索
🚪ログイン
試験 エッジ処理 📖
個人的なもの、つくり途中。
プログラム:
(→大)
/*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* 仮エッジデータ1、2またはエッジデータは、透明度のみのデータとなります。1画素に付き、"0"か"1"。 色が滑らかに変化する画像などでは、感度が良すぎて黒くなります。絵などの輪郭を検出するのにはもってこいです!画像では、事前に色の階調(グラデーション)をおとす必要があるでしょう。 *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*/ V=80#←エッジの検出度合い(感度)を変化できます。Vを小さくすると、感度は上がります。 a=0, b=0, 縦列=0, 横列=0 データ=[] データ番号=[] エッジデータ=[] 仮エッジデータ1=[] 仮エッジデータ2=[] 番号1=[] 番号2=[] 座標X=0 座標Y=0 ●(xywhの|xywhを)色データ取得 描画中コンテキストの「getImageData」をxywhでJSメソッド実行して、それ["data"]で戻る ここまで ●画像点画描画とは 色データ=[] Iを0から縦列まで繰り返す Nを0から横列まで繰り返す 「{I}@{N}」をデータ番号へ代入 エッジデータ@データ番号を色データに代入 #色データを表示 「rgba({0},{0},{0},{色データ})」に線色設定 「rgba({0},{0},{0},{色データ})」に塗色設定 [-N*1+座標X,-I*1+座標Y]に0.5の円描画#<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ここまで ここまで ここまで #[0,0]へ「https://n3s.nadesi.com/image.php?f=223.png」を画像描画。 #[0,0]へ「https://n3s.nadesi.com/image.php?f=221.png」を画像描画。 #画像URN=「https://n3s.nadesi.com/image.php?f=263.png」 #画像URN=「https://n3s.nadesi.com/image.php?f=264.jpg」 #画像URN=「https://n3s.nadesi.com/image.php?f=267.jpg」 画像URN=「https://n3s.nadesi.com/image.php?f=378.png」 画像URNの[0,0,900,750]から[0,0,700,600]へ画像部分描画 #F=[0,512,5]の値指定バー作成。 描画中キャンバスをマウス押した時には、 マウスXをaに代入 マウスYをbに代入 ここまで 描画中キャンバスをマウス離した時には、 マウスXを座標Xに代入 マウスYを座標Yに代入 マウスX-aを横列に代入 マウスY-bを縦列に代入 Iを0から縦列まで繰り返す Nを0から横列まで繰り返す [マウスX-N,マウスY-I,1,1]の色データ取得 それを「,」で区切る Wに代入 Wの3を配列切り取り それをKに代入 K/250をpに代入 「{I*1}@{N}」をINに代入 INをcに代入 IN+0.5をdに代入 データ@c=W データ@d=p ここまで ここまで ここまで 「①エッジ記録(何も起きませんが、 ドラッグアンドドロップ後に押してください)」のボタン作成して記録に代入 改行作成。 「②2枚プレス(ここでも何も起きません。)」のボタン作成してプレスに代入 改行作成。 「③描画(やっと検出が表示されます。)」のボタン作成して提示に代入 改行作成。 #Fのテキスト取得してVに代入 記録をクリックした時には Iを0から縦列まで繰り返す #=====================横エッジ検出 Nを0から横列まで繰り返す もし縦列=Iでなければ ぷちAデータ=[] ぷちBデータ=[] 「{I*1}@{N}」を番号1に代入 データ@番号1をぷちAデータに代入#←1回目 「{I*1+1}@{N}」を番号2に代入 データ@番号2をぷちBデータに代入#←2回目 JC=0 (ぷちAデータ@0-ぷちBデータ@0)^2をぷち1に代入 (ぷちBデータ@0-ぷちAデータ@0)^2をぷち2に代入 (ぷちAデータ@1-ぷちBデータ@1)^2をぷち3に代入 (ぷちBデータ@1-ぷちAデータ@1)^2をぷち4に代入 (ぷちAデータ@2-ぷちBデータ@2)^2をぷち5に代入 (ぷちBデータ@2-ぷちAデータ@2)^2をぷち6に代入 (ぷちAデータ@3-ぷちBデータ@3)^2をぷち7に代入 (ぷちBデータ@3-ぷちAデータ@3)^2をぷち8に代入 もし(ぷち1>V)または(ぷち2>V)または(ぷち3>V)または(ぷち4>V)または(ぷち5>V)または(ぷち6>V)または(ぷち7>V)または(ぷち8>V)でなければ JCに0を代入 「{I}@{N}」をデータ番号へ代入 仮エッジデータ1@データ番号=JC 違えば JCに1を代入 「{I}@{N}」をデータ番号へ代入 仮エッジデータ1@データ番号=JC ここまで ここまで ここまで ここまで Iを0から縦列まで繰り返す #====================縦エッジ検出 Nを0から横列まで繰り返す もし横列=Nでなければ ぷちAデータ=[] ぷちBデータ=[] 「{I*1}@{N}」を番号1に代入 データ@番号1をぷちAデータに代入#←1回目 「{I*1}@{N+1}」を番号2に代入 データ@番号2をぷちBデータに代入#←2回目 JC=0 (ぷちAデータ@0-ぷちBデータ@0)^2をぷち1に代入 (ぷちBデータ@0-ぷちAデータ@0)^2をぷち2に代入 (ぷちAデータ@1-ぷちBデータ@1)^2をぷち3に代入 (ぷちBデータ@1-ぷちAデータ@1)^2をぷち4に代入 (ぷちAデータ@2-ぷちBデータ@2)^2をぷち5に代入 (ぷちBデータ@2-ぷちAデータ@2)^2をぷち6に代入 (ぷちAデータ@3-ぷちBデータ@3)^2をぷち7に代入 (ぷちBデータ@3-ぷちAデータ@3)^2をぷち8に代入 もし(ぷち1>V)または(ぷち2>V)または(ぷち3>V)または(ぷち4>V)または(ぷち5>V)または(ぷち6>V)または(ぷち7>V)または(ぷち8>V)でなければ JCに0を代入 「{I}@{N}」をデータ番号へ代入 仮エッジデータ2@データ番号=JC 違えば JCに1を代入 「{I}@{N}」をデータ番号へ代入 仮エッジデータ2@データ番号=JC ここまで ここまで ここまで ここまで ここまで プレスをクリックした時には#←「2枚プレス」ボタンを押すと、2枚の 縦,横エッジを重ね合わせます。 Iを0から縦列まで繰り返す Nを0から横列まで繰り返す 「{I}@{N}」をデータ番号へ代入 仮エッジデータ1@データ番号をぷちAデータに代入 仮エッジデータ2@データ番号をぷちBデータに代入 もし(ぷちAデータ=1)または(ぷちBデータ=1)ならば エッジデータ@データ番号=1 違えば エッジデータ@データ番号=0 ここまで ここまで ここまで ここまで 提示をクリックした時には # 全描画クリア 画像点画描画 ここまで #おわり
プログラムを実行
shikiishi 作
タイトル:
試験 エッジ処理
ライセンス:
自分用 (貯蔵庫のみ/転載不可/ハブ保存なし)
タイプ:
wnako
タグ:
-
利用バージョン:
3.4.24
作成日時:
2023/12/08 16:57
公開の投稿
ログイン
して★を付けよう!
📝作品を編集
作品公開情報
📍この作品のURL:
📍アプリ(即時実行)のURL:
📍アプリ(実行ボタンあり)のURL:
📍ブログパーツ:
上記HTML↑をブログに貼り付けることでアプリを埋め込めます。
📍ライブラリ直リンク - 『!「***」を取込』で使うとき:
通報数:
0
通報って何?