X



画像処理 15枚目 [転載禁止]©2ch.net

レス数が900を超えています。1000を超えると表示できなくなるよ。
0891801 自称プロマネ
垢版 |
2024/05/25(土) 10:33:43.96ID:3A5k7dLV
>>809の設計書通り∧魔改造して、コントラスト改善のを
実装完了したぜ。簡易テストしかしてないけど、
ま、バッチリ実装。∴809の設計書の正しさの証明だ。
by 🤡 プロマネがテスターを褒めてあげた

やっぱり、画像処理は、お絵描きと数学だな
by 🥳 バカっテスター。時に普通の事も喋る

ま、128付近のコントラストが改善される
ちなみに、dy/dxはxの値により変わる
R、G、B毎に補正とした場合、色相や彩度も変化する
コントラスト強くすると、彩度がVIVIDとなる。

ま、なんか、AS⚫Sのノートパソコンの画質に似てる
ま、エイスースさんがどの様なロジックで
鮮やかな画質の補正をしてるかは知らんが

by 👤自称宇宙人、怪しいウンチク語るてか騙る
0892801
垢版 |
2024/05/27(月) 04:56:48.45ID:karS/dE1
さて、ガンマ補正、コントラスト補正
の実装に成功し
RGBそれぞれに同一のガンマ補正とした
何か物足りん∴RGB別ガンマ補正に魔改造
by 🤡自称プロマネ
0893801 早朝の低レベルレビュー
垢版 |
2024/05/27(月) 06:30:42.41ID:karS/dE1
魔改造か、なんか知らんけど、RGB別ガンマ補正も、
ワリと定番的ぢゃーーーん。魔改造ぢゃなくて普通だね。
by 🥳テスター

ま、魔改造って程ぢゃないな。それより、
🔴 = 255 * ((🔴/255)**(1/γ)); なんて地球の入門書ぽぃ
コードは、やめろーー。やはり、ルックアップテーブルだろ
by 👤宇宙人(の成りすまし)

ルックアップテーブル?! あれか。
ま、入門書は見易さ重視。地球人は、速度重視でルックアップテーブルで
実装するのは、常識だ。、てかルックアップテーブルで
実装に魔改造を先に優先するか。
by 🤡

魔改造ドンドンやれー。今のでも、処理速度許容スレスレだが
魔改造で、処理時間ゼロかつ処理速度ゼロにしろーー
by 🥳バカっテスター

処理時間ゼロなら処理速度は無限大の値だろ
by 👤宇宙人の成りすまし

┐⁠(⁠ ⁠∵⁠ ⁠)⁠┌ by 🤡
0894801 レビュー
垢版 |
2024/05/27(月) 11:05:51.12ID:karS/dE1
ま、RGB別ガンマ補正、の魔改造完了したよーん。BY🤡

ぢゃ今度は色相変換だ。てか色相変換の一番簡単なやつで
イケると思うんだけど、で、えーと、えーと、そうだ、
髪の毛が🟢系統なら🟡に変換してさらにγ補正して
黒髪に近い金髪したいです。
そんなのに魔改造のやろう。これ要件定義だ。

by 🥳バカっテスター、
思いつきで画素処理の要件定義語る

是非実現したいが、慎重に検討だけする
by 🤔自称プロマネ

ルックアップテーブルでは困難ぽぃが、
処理時間キニシナイなら、ワリと楽勝か
んーーー微妙
by 👤自称宇宙人
0895801 ランベルト星人の謎の呟き
垢版 |
2024/05/27(月) 13:22:10.20ID:karS/dE1
この宇宙は6色の光でワタシが創成したのぢゃ
Red→Yel→Green→Cyan→Blue→Violet
の6色で30°/色の空間ナノぢゃ
地球人たちよ。わかるかーーー
虹は七色との地球の🇯🇵の説は
信じてはいけない。6色が正解ぢゃ
by 👤ランベルト宇宙人 の戯言
0896801 自称プロマネの呟き
垢版 |
2024/05/27(月) 15:08:15.16ID:karS/dE1
自称宇宙人が、この宇宙は、六色といってるけど
でさ、地球人の用語には、マゼンタという色があってさ
マゼンタ(magenta)は「明るく鮮やかな赤紫色」
だから、宇宙人の主張の
Red→Yel→Green→Cyan→Blue→Violet よりも
Red→Yel→Green→Cyan→Blue→Magenta の方がいいと思います。
by 🤡

てかさ、この世はRGBの3色で出来てるなんてのは、
人間の目のバグでさ、YELLOW CYAN MAZENTAの3色で
出来てると思う。印刷物を拡大すれば解るよーーん。
この世はレモン🍋と氷🧊とさくら🌸から作られてるからだ

BY 🥳バカっテスターの哲学
0897801 ランベルト星人の謎の呟き
垢版 |
2024/05/27(月) 16:27:53.90ID:karS/dE1
地球人の視覚野は、ナゾだったが、霊的推論により
何か見えてきた。とにかく色相は円でなく、
単なる六角形に過ぎない。ま、degで表現を
地球の自称知的生命体はdegで色合いを表現するが
何処か無理はあろう。ま、それはともかく

純マゼンタの強い光と、純イエローの強い光を
混ぜるとどう地球人に見えるかは気にはなる。
赤と白の明るく、くすんだ色のはずだ
by 👤宇宙人の成りすまし

明るくて、くすんでる❓。へんなヤツ
by 🥳地球人代表のバカっテスター
0898801 ランベルト星人
垢版 |
2024/05/27(月) 17:54:33.99ID:karS/dE1
RGB=(255,255,0) と RGB=(255,255,128)
では、モチロン、輝度は後者は、デカイのに、
しかし、前者の方が、明らかに目立つ

そ、後者は、明るいのにくすんでるのだ
ていうか、地球人の視覚野のバグだろう。

BY 👤 自称宇宙人のトンデモうんちく論
0899801 てか
垢版 |
2024/05/27(月) 18:13:29.65ID:karS/dE1
>>895 こらーランベルト星人
6色で30°/色 なんて書いてるけど
全色相は、30✕6は180°か? へん
6色はいいけど、60°/色だろ
R Y G C M そしてRに戻る これで360°だっちゆーーの
だから、そ、R→Yなら色相は60°。これが地球のセオリーだ。

BY 🤡プロマネ、雑談すらもチェックしまくるーー
0900801 色相変換の勝手に設計
垢版 |
2024/05/27(月) 20:13:10.99ID:karS/dE1
地球人は、
RGB → HSV →H更新したHSV →RGB
色相を改変させるようぢゃ

しかし、ワタクシは、
HLSに変換してやる。HLSといっても
地球人のHLSとは多分絶対ちがう。
LはLarge SはSmall ぢゃ
Hue = 工事中(🔴,🟢,🔵); // 0〜360°
Large = Math.max(🔴,🟢,🔵); // 0〜255
Small = Math.min(🔴,🟢,🔵); // 0〜255

Hue += 30;

🔴 = 工事中(Hue,Large,Small);
🟢 = 工事中(Hue,Large,Small);
🔵 = 工事中(Hue,Large,Small);

by 👤宇宙人の勝手なプログラム設計

工事中だらけ。設計書未完成ぢゃーーん
by 🥳
0901801 てか900
垢版 |
2024/05/28(火) 06:30:25.53ID:bjW8YU+j
色相H改変プログラミング設計は下記だ

hue = 関数@(🔴,🟢,🔵); // 0〜360°
max = Math.max(🔴,🟢,🔵); // 0〜255
min = Math.min(🔴,🟢,🔵); // 0〜255

hue += 30; // 色相Hを30°ずらすとして

⚪ = 関数A(hue,max,min);
🔴 = ⚪の16進上位2桁;
🟢 = ⚪の16進中位2桁;
🔵 = ⚪の16進下位2桁;

なお、関数@、関数Aは、
ネットに転がってるRGB2HSV等から
ぱくっぱくっトスル
by 🤡プロマネのプログラム設計

ぱくっっとする。RGB2HSV
by 🥳
0902801 レビュータイムてか雑談
垢版 |
2024/05/28(火) 07:50:13.87ID:bjW8YU+j
👤 サイコロって正4面体か正六面体どっちか解るか?
🥳 サイコロは正方形だから、モピロン正4面体だね
🤡 サイコロは普通は1から6⚀⚁⚂〜⚅だな。
👤 色空間は丸いてか円錐だけど、円錐ぢゃなく正六面体だ
0903801 色相のお絵描き
垢版 |
2024/05/28(火) 20:51:17.80ID:bjW8YU+j
円ではなく、六角形だが90°の角が6個あり
それは、おそらく平面ではない。
円錐というワケでもない。by 👤
0904801 バカっテスター
垢版 |
2024/05/29(水) 05:31:42.14ID:XkOAN76x
👤って、なんなの?。🐴🦌なの?
頂点が6つ、その頂点は色は、🔴🟡🟢🔵🔵🟣
の6つの正六角形だから、その内角は120°
90°なんかぢゃありません。
90°なら正四角形だし、👤のお絵描き。ヘン
by 🥳

ま、普通の地球人程度の知能だ。
もしかすると地球人の脳みそは、
🔴🟡🟢🔵 の4点でしか判別できないのか
もともと、地球人は進化の前は🟡と🔵で
進化して脳内視覚系MT野より1次に近い領域で
🟡は🔴と🟢に分化したようだが
まだ進化のレベルが低い
やはり、モピロン、🔴🟡🟢🔵🔵🟣の6つに
分化した、ワレワレ、ランベルト星人の足元にすら 未到達

BY 👤ランベルト星人、トンデモ画像哲学騙る
0905801 てか
垢版 |
2024/05/29(水) 06:29:39.66ID:XkOAN76x
バグ票(JavaScript言語)

配列の参照
❌ LUT(i) = i/2; /*明度半分*/
⭕ LUT[i]= i/2; /*明度半分*/

条件式
❌ if (a > 240){ ・・・
⭕ if (a > 240) { ・・・
 補足 カッコは全角ぢゃなくて半角

変数名変更
E3→E13、E3x→E20 へ変更すべきなのに
E3→E13、E3x→E13x になっちゃった

by 🤡自称プロマネ

なんだ、オレらが画像処理哲学レビュー
してる間に、プロマネ、実装してたのかよ
てか、
変数名変更
 E3→E13、E3x→E20 へ変更すべきが
 E3→E13、E3x→E13x になっちゃった
は、地球人がよくやるミスだ。ゲラゲラ
by 👤自称宇宙人
0906801 てか素晴らしいバグ票
垢版 |
2024/05/29(水) 09:15:37.20ID:XkOAN76x
❌ var d = docなんとか.value;
⭕ var d = parseFloat(docなんとか.value);
型宣言的なことしないと不味いとは
クロート泣かせ
0907801 バグ票のバグ表なのに、低レベル
垢版 |
2024/05/29(水) 10:07:08.43ID:XkOAN76x
parseFloat(str) は
Number(str) を検討しよう by 👤
短いから、こっちがいいぢゃーーーん by 🥳
そうなのか by 🤡
0908801 プロマネ
垢版 |
2024/05/30(木) 08:12:13.74ID:hDXedsTr
❌ var d = docなんとか.valu
e;
⭕ var d = parseFloat(docなんとか.value);
💮 var d = Number(docなんとか.value);

なんだな、上記後続に dd += d; というコードがあれば
オレ的には ddやdは数値として判定して欲しいな。
が、javascript のそこが、ダメな言語だな。┐(´д`)┌ヤレヤレ
by 🤡自称プロマネ

JavaScript言語ってバグってるのーーー❓
by 🥳バカっテスター

んー、+演算子(+=も含む)では、文字列連結なのか
数値加算なのか判断するのは、JavaScript言語体系的に
不可能というのが、オレの霊的思考結果だ。
JavaScript言語のバグではなく、そんな言語を有り難がる
地球人の脳みそのバグである。
by 👤自称宇宙人は、アレよりさらに🐴🦌
0909801 色相変換ロジックは完成したのに、夜のレビュー
垢版 |
2024/05/30(木) 20:04:25.16ID:hDXedsTr
ある色(例:緑🟩)に近似する部分を
別の色(例:黃🟨)に変化させたい。
だから色相変化ロジックを作ったし
また、完成もした。
by 🤡自称プロマネ

で、
by 👤ランベルト宇宙人

🟩は緑は、黄緑〜青緑と色相範囲が広い
それ故に、-60degずらしても
🟨にならず、🟧とか🟩のままのマダラだ
しかもなんか、くすんだ感じ
彩度を上げても、黄色から色相が
+や−方向にいろいろずれる
🟧と🟩のマダラは、遠目でみても
くすんだ🟨というか💩色だ。
by 🤡トホホ

実質設計バグだねーー。ヤッホー
by 🥳バカっテスター
0910801 ランベルト星人の霊的な知恵
垢版 |
2024/05/30(木) 20:15:52.50ID:hDXedsTr
🟩に近似する部分をターゲットとおく。
ターゲットを白黒てかグレー□▓■に変換する。
ターゲットを黄🟨にしたい場合は、RGB別ガンマ補正で
んー、(Rガンマ、Gガンマ、Bガンマ)=(1.1 , 1.1 , 0.25)
すりゃ、超綺麗で鮮やかな黄色に化学変化する
地球人はとかく、HUEをシフトさせたがるが、そりゃ 💩色
になるだろ。

その点、俺らランベルト星人は、美術的偏差値パワーも
モピロン、無限大。このロジックにするとよろしいーーーー

by 👤自称宇宙人、病状悪化で超上から目線のトンデモ提案
0911801 プロマネ 実装やり直すかも篇
垢版 |
2024/05/31(金) 05:12:59.05ID:Xgy0yQwL
色合いを綺麗に変化させるには、
Hueを変化させる は、没にしよかな❓
🟡色に変化させたければ
一旦グレー▓に変換して、
🔵の明度を落とし、補色🟡に変化させる
そんな、ロジックに、魔改造しよかな❓

てか、JavaScriptで実装してたんだな。
これ、C言語よりカンタンと思ったけど
舐めるとアカンでぇーーーーー てかさ

var a = "1";
var b = a + 1; console.log(b);
b = Number(a) + 1; console.log(b);

で表示される一行目と二行目、異なるな。
ま、ようやく慣れたけど、Cより鬼門なJavsScript
by 🤡

プロマネって1+1も計算出来ないの❓
どっちも、絶対2に決まってるぢゃーん!
by 🥳バカッテスター

地球人にはC言語モビロン、JavaScriptという
言語すら解ってないおバカな生命体だ
by 👤 自称宇宙人
0912801 デバッグ中なのに低レベルレビュー
垢版 |
2024/05/31(金) 16:24:11.10ID:DOZePeod
ルックアップテーブルというのでハグッた
ルックアップテーブルという配列数
256の配列を項目名LUTで宣言し使用

🔴は0〜255の値、🟢、🔵も同様
gray = (🔴+🟢+🔵) / 3;
LUT[gray] = ・・・;

って感じ。なんか上手くいかん。
ま、DEBUGは済だが、オマエら、
どこがバグってるか、わかるかーー
by 🤡プロマネ(自称)

gray = (🔴+🟢+🔵) / 3; で
🔴は0〜255の値、🟢、🔵も同様だし、
grayは0〜255 ∴
配列数256の配列LUTへの値代入
LUT[gray] = ・・・; はオバーフロー
なんてしません。
プロマネの頭がバグってると断定されうる
by 🥳(バカっテスター)
0913801
垢版 |
2024/06/01(土) 08:04:25.12ID:V6DMg2s9
toDataURLメソッドでPNG

JavaScriptでは、Canvasに描画は、toDataURLメソッドは、引数は、
PNGで保存では、PNGで保存できるぽ 
 ∴ BMP2PNG可能かな?
PNGの場合:image/png
by 🤡
0914801 次期魔改造へ、雑談レビュー
垢版 |
2024/06/01(土) 15:50:20.87ID:V6DMg2s9
てか、384x216 キャンパス2つにするか 
編集前と編集後用を表示の2つ
by 🤡

384x216 は、縦も横も4の倍数だし
FULL HD のジャスト20%だし、
4Kのジャスト10%だし、
モニター用なら、384x216でいいだろ
by 👤

大きくしたいならブラウザでズームする
by 🤡

そっか、ズームしたモニターの解像度は
低いが
by 👤

内部は、まるごとBMP24bppを無編集
ファイルダウンロードでは
Canvasからでなく、実装したバイト配列からだ。ダウンロードのファイルの解像度は
無劣化だ。
by 🤡

やるな、ま、その魔改造そこそこ難しいが
地球人でも、どうにかなるだろう。
by 👤
0915801 雑談なのに話に割り込むテスター
垢版 |
2024/06/01(土) 15:58:01.49ID:V6DMg2s9
モニターでも、解像度よいのがいいな。Canvas2つ
768x512を2画面がいいぢゃーーん。横に並べても
パソコンの画面が1920ならおさまるぢゃーーん
by 🥳

んー、パソコンは125%で表示してるし、
768✕2✕1.25 =1920 余裕で20pxほしい
スレスレアウトと思われる。 おしいい by 👤
0916801 雑談レビュー
垢版 |
2024/06/01(土) 16:03:02.51ID:V6DMg2s9
んー、そうだcanvasは
640x360 を2つだな。
てか既に魔改造済で実装設計面倒くさくなった
着手は、無限日以内にしよっと by 🤡
0917801 紆余曲折レビューなるも纏まりはじまる
垢版 |
2024/06/01(土) 19:46:44.18ID:V6DMg2s9
てか、Canvasのサイズは
入力ファイルを縦1/3 横1/3 ∴面積比1/9
とする。理由、実装の見込みがたった。
Canvasのサイズ固定は難しい
by 🤡

Canvasのサイズ固定は難しい?
by 👤

入力の画像ファイルのサイズはイロイロで
それをCanvasのサイズ固定に合わせる
ロジックは面倒だ。

一番簡単な、入力の画像ファイルのサイズ
とCanvasを、同じサイズにし、
ま、それよりは、若干困難だが
入力ファイルを縦1/3 横1/3 ∴面積比1/9
もワリと実装見込みたった、

最近傍法にするなら簡単だが
余裕がでてきたから、少し凝るか
by 🤡

その場合は、9点平均が普通だ
中央重み付けるのも有りだが、
by 👤
0918801 魔改造のする前にロジック簡素化やるか
垢版 |
2024/06/02(日) 05:24:08.86ID:XMXnwOLu
魔改造すみの現状は以下のハズ
スパゲティになっちゃってる。

  BMPfile
   ↓
 【読込クリック】
   ↓
バイト配列BB@→CANVASへモニター
BBAは仮初期化とする🌟
   ↓
 【🙎画像補正(γ補正等)】
   ↓
バイト配列BBAに補正後のをセット
バイト配列BBA→CANVASへモニター
   ↓
 【ダウンロードクリック※】
   ↓
  BMPfile

※BBAは初期化(仮初期化🌟含む)なら
ダウンロードクリックしても
ダウンロードせず、
「画像補正前∴ダウロードしない」の旨
の表示トスル
BY 🤡 上記の流れをシンプルに改造だ

シンプルへの改造プラン、イイネ
「画像補正前∴ダウロードしない」との
機能の喪失は暗に容認となる。
BY 👤
0919801 ロジック簡素化という超魔改造
垢版 |
2024/06/02(日) 06:31:47.20ID:XMXnwOLu
  BMPfile
   ↓
 【読込クリック】
   ↓
❌バイト配列BB@→CANVASへモニター
❌BBAは仮初期化とする🌟
⭕バイト配列BBA→CANVASへモニター
⭕バイト配列BBA→BB@へ実体複写
 バイト配列BB@
   ↓
 【🙎画像補正(γ補正等)】
   ↓
バイト配列BBA
バイト配列BBA→CANVASへモニター
   ↓
 【ダウンロードクリック※】
   ↓
  BMPfile

❌※BBAは初期値(仮初期化🌟含む)なら
⭕※BBAは初期値なら
ダウンロードクリックしても
ダウンロードせず、
❌「画像補正前∴ダウロードしない」の旨
⭕「File読込前∴ダウロードしない」の旨
の表示トスル
BY 🤡現状とほぼ同一chk∵degrad.ヤバイ

簡素化って、魔改造より魔改造ぢゃーん
デグってバグる超魔界造。うれちぃです
BY 🥳
0920801 輝度のウンチク
垢版 |
2024/06/03(月) 02:50:27.68ID:bSSMnrG0
>>912
gray = (🔴+🟢+🔵) / 3; ❓❓❓これさ
gray = 0.3×🔴+0.6×🟢+0.1×🔵; だ
by 🤡

秘伝の数式では、
▢ = Math.max(🔴,🟢,🔵) / 255;
■ = Math.min(🔴,🟢,🔵) / 255;
▓ = (🔴+🟢+🔵) /255 - ▢ - ■;
gray = 255 * Math.sqrt((▢ ** 2 + ▓ ** 2));
by 👤 病的ウンチク論

gray = Math.round(gray); を追加。
∵非負整数必須 ∵grayは後続で配列の要素数
by 🤡
0921801 ランベルト星人の謎の呟き
垢版 |
2024/06/03(月) 06:19:30.38ID:bSSMnrG0
>>917 レビュー、高度なようで、これクソだ
ていうかさ、
プロマネ(自称)よ。描写済のCanvasを
ズーム(拡大・縮小)するロジック実装、
手間取ってるな。
ま、地球🌏のネットに公開のコード
解りづらいが、解読に成功。

以下のような感じでやると良いぞっ。

例 3840x2160でデカい。10%にしたい
普通に描写済のCanvas 3840x2160
を、10%に縮小させる、コード

var 💙=document.getElementById("📘");
💙.style.width= 384 + "px";
💙.style.height= 216 + "px";

ちなみに、💙.style.width、💙.style.height
は、型は、文字列のようぢゃ
💙.style.width= 384; ではNG
💙.style.width= 384 + "px"; 
としたら、上手くできたぁぁぁ\(^o^)/

by 👤 今日は青色で統一
0922801 編集後記篇∵ほぼ完成
垢版 |
2024/06/03(月) 11:56:44.29ID:bSSMnrG0
設計書を清書。PGは既に修正済

  編集前BMPfile
   ↓
 【読込クリック】
   ↓
 バイト配列BB@→【実体複写】
   ↓        ↓
【🙎画像㌏補正等】 バイト配列BBA
   ↓        ↓
バイト配列BBA→→CANVASへモニタ
   ↓
 【ダウンロード】
   ↓
  編集後BMPfile

そして設計書を清書する前に
PGは暫定的だが完了したぜ\(^o^)/
BY 🤡 自称プロマネ

設計書をちゃんと作らないでPGやったの?ダメです。
BY 🥳 教科書に洗脳されるテスター

読込み直後にバイト配列BB@、Aの
2つ実体複写は、地球人内レビューで
ボロクソに言われる設計だろうが、
その方がロジック的に簡素かつ
処理速度問題なしに気づくなら製造中でも
ヤツは地球人だし、合格点な設計だろ
BY 👤 宇宙人は病的な程に上から目線
0923801 ラベンベルト星人の怪しい呟き
垢版 |
2024/06/04(火) 19:52:23.78ID:nl9S0mkZ
編集後記だなんて、で、次は彩度増強やろうぜぇ てか
既に、アルゴリズム完成

我がランベルト銀河群に於ける
彩度改変なる秘伝、秘伝の数式だ。

彩度倍の秘伝、秘伝、秘伝の数式だ。
⚪ = (🔴、🟢、🔵) の最大値
⚫ = (🔴、🟢、🔵) の最小値
▓ = (🔴、🟢、🔵) の中央値

var k = (▓−⚫)/(⚪−⚫)
var ● = ⚫/2 // 彩度を倍にする哲学
var ▤ = ⚪*k+●*(1-k)

if (🔴==⚪&&🟢==▓&&🔵==⚫){
 🟥 =⚪; 🟩=▤; 🟦=●;
}else if (・・・

by 👤 ゼロ割考慮せず。but机上chk ok

ま、秘伝❓ 特段、割と普通だね。
by 🤡
0924デフォルトの名無しさん
垢版 |
2024/06/10(月) 16:02:58.81ID:YXHAsqQy
なぜかこのスレSPAM認定されてる
0925801 編集後記てか新たなるプロジェクト
垢版 |
2024/06/18(火) 18:24:46.75ID:ED3Kiuls
従来
  編集前BMPfile
   ↓
 【読込クリック】
   ↓
 【イロイロやる】
   ↓
 バイト配列BB@

改造中版(目処たった案)
  編集前BMPfileまたは、PNGfile
   ↓
 【読込クリックでreadAsDataURL】
   ↓
  DataURL
   ↓
 【Image.src】
   ↓
  透明IMAGEタグ
   ↓
 【Canvas.Context.drawImage】
   ↓
  CANVASタグへ表示
   ↓
 【24bitMAPバイト配列変換 検討】
   ↓
 バイト配列BB@

BY 🤡👤Javascript マジ画像処理に使える
0926925
垢版 |
2024/06/19(水) 10:26:57.56ID:BBDLSRDm
従来
  CANVAS
   ↓
 【24bitMAP配列変換】
   ↓
 バイト配列BB2
   ↓
 【Download】
   ↓
  BMP File

修正案
  CANVAS
   ↓
 【toDataURL("image/png")】
   ↓
  データurl ∴バイト配列BB2不要
   ↓
 【Download∴Aタグ .href】
   ↓
  PNG File

詳細PG設計
📕はCanvasタグID 、📘はAタグID
🔴 = document.getElementById("📕");
🔵= document.getElementById("📘");
var 🟢 = 🔴.toDataURL("image/png");
🔵.href = 🟢;
BY 👤
0927925 BMP2PNGが可能∵JavaScript
垢版 |
2024/06/19(水) 13:11:10.26ID:BBDLSRDm
  BMPfile
   ↓
 【読込クリックでreadAsDataURL】
   ↓
  DataURL
   ↓
 【Image.src】
   ↓
  透明IMAGEタグ
   ↓
 【Canvas.Context.drawImage】
   ↓
  CANVASタグへ表示
   ↓
【toDataURL("image/png")】
   ↓
  データurl ∴バイト配列BB2不要
   ↓
 【Download∴Aタグ .href】
   ↓
  32bpp PNG File

ま、元々のBMPの透明情報は24bpp故に
透明情報は存在しない。けど、
BMP2PNG できたーーー
by 🥳
0928801 ラベンベルト星人の怪しい呟き
垢版 |
2024/06/20(木) 06:34:14.75ID:+2sffunl
勝手に備忘録 怪しいです。
📕はファイル名、例えば test.jpgとおき
📘はCANVASのタグID名として

JavaScriptは、
var 🏜 = document.getElementById("📘");
var 🗒 = 🏜.getContext("2d");
var 🌌 = new Image();
🌌.src = "📕";

🌌.onload = function()
{
🗒.drawImage(img, 0, 0);
w = 🏜.width; h = 🏜.height;
var src = ctx.getImageData (0, 0,w, h);
var dst = ctx.createImageData(w, h);
・・配列dstへsrcよりイロイロ加工だ・・🗒.putImageData(dst, 0, 0)
};
という感じでやると、
📕test.jpgは、加工した画像データは、
📘キャンバスへ表示される

by 👤自称宇宙人の滅茶苦茶な解説文
0929801てか928
垢版 |
2024/06/20(木) 06:37:42.87ID:+2sffunl
こら!
ctx.getImageDataは、🗒.getImageDataとかへ
ちゃんとー書き換えろー by 👤自分へグチる
0930801 未完成なバグ報告書
垢版 |
2024/06/21(金) 06:34:06.71ID:vonxZCtW
vs = 0.777;
tmp = 1.0001; // ほぼ1だぜぇーーー
tmp = (1 - tmp) ** 0.5; //平方根てか0.5乗だ

if   (tmp === vs) {}
else if (tmp < vs) {}
else if (tmp > vs) {}
else {alert("絶対にアリエン★");}

ってJavascriptだけど・・・
0932801 ラベンベルト星人の怪しい呟き
垢版 |
2024/06/22(土) 06:40:51.98ID:u0fEFVM4
reader.onload = function(){ // F読込済の時
var dtu = reader.result; // DataURLだ
var img = new Image(); // IMAGEだ
img.src = dtu;  //DataURLでもヨシ
img.onload = function() { // I読込済の時
ctx.drawImage(img, 0, 0); // 画像表示
}

何だけどーー、ソースはヨシだが
コメントがバグってるな
✕ //DataURLでもヨシ
△ //DataURLぢゃないとダメ
◯ //DataURLならヨシ
◎ //DataURLで後続getImageDataもヨシ
💮 // 地球人の言葉で表現不可能

by 👤 宇宙人、getImageDataに嵌まる
0933801てか932への自作コメント
垢版 |
2024/06/22(土) 08:52:26.56ID:u0fEFVM4
img.src = dtu; // DataURLだ
なら順調だけど、
img.src = "E:/test.png"; //Hard Cording
だと、キャンバス表示はされるのに
後続getImageData で嵌るし、
後続Canvas.toDataURL でも嵌るし、
故にPNGファイルダウンロードできない
てか、自称宇宙人の宇宙人の指摘
バッチリぢゃーーん。やるぅーーー
by 🥳 自称宇宙人に忖度するテスター
0934デフォルトの名無しさん
垢版 |
2024/06/22(土) 09:27:36.33ID:R3uDiOs/
img.src = "file:///E:/test.png";
0935801 編集後記なのに、次期設計レビュー 超低レベル
垢版 |
2024/06/23(日) 06:41:15.55ID:KluUmZ8C
 入力のPNG or Jpeg or BMP File
  ↓
 【event.target.files】   →Fileobject
→【API : readAsDataURL】→DataURL
→【Imageのsrc】     →image
→【Context.drawImage】→Canvas1
→【Context.getImageData】→データアレイ1
→【⭐⭐ 画像処理 ⭐⭐】→データアレイ2
→【putImageData】   → Canvas2
→【toDataURL】     → DataURL
→【Aタグのhref】┐
         ↓
 ダウンロード先 PNG or Jpeg File

BY 🤡👤 苦難の長い道のり。but作成中
BY 🥳 BMPが無くなるっ。口悪テスタ

従来版はCANVAS2BMP機能が存在スル
CANVAS ┐
 【Context.getImageData】→ データアレイ1
 →【⭐24bitMAP配列変換】→データアレイ2
  →【Download】┐
          ↓
         24bppのBMP File
BY 🤡 自慢しだす自称プロマネ

p は4で割った余りトスルとき、
function i(x,y,w,h,p) => {
return (3*w + p) * (h-1-y) + 3*x + 54 }
BY 👤宇宙人、ナゾ言語で秘伝の数式記載
0936801 編集後記なのに、備忘録 兼 奇妙なバグ報告書
垢版 |
2024/06/23(日) 20:50:37.47ID:KluUmZ8C
JavaScriptでCANVASに画像を表示のヤツ

var src = コンテキスト1.ホゲホゲ;
var dst = コンテキスト2.ホゲホゲ;

for (var x = 0; x < 640; x++) {
for (var y = 0; y < 360; y++) {
var i = 4 * (640 * y + x); // 4倍だ⭐⭐⭐
・・・・ホゲホゲ・・・
dst.data[i] = r; //赤
dst.data[i+1] = g; //緑
dst.data[i+2] = b; //青
}
}
コンテキスト2.putImageData(dst,0,0);

putImageDataは実行されたのは確認済
でも画像表示されん。32bit 4byteブツブツ
by 🥳 テスター不思議がる

原因不明 by 🤡 自称プロマネ悩む

透明なモノも、見える霊能者のワシには
透明な画像が表示されてる見えます。
by 👤自称宇宙人、地球人を揶揄う
0937801 24bppBMP PADDINGで自慢レビュー
垢版 |
2024/06/24(月) 11:37:51.76ID:+uJiH6qu
てかさ、BMPのpaddingの件だけど
──────────────
w=201;
h=80;

ww=4*Math.floor((w*24+23)/32) ;
hh=h-1;
console.log(index(100,50,ww,hh));

function index(x,y,ww,hh){
i = ww * (hh-y) + 3*x + 54;
return(i);
}
なら、100点 by 🤡 17870になった
──────────────
console.log(index(100,50,201,80));
function index(x,y,w,h) {
i = (3*w + (w % 4)) * (h-1-y) + 3*x + 54
return(i);
}
by 🥳 17870だ。引数少なくスッキリ
──────────────
やっぱオレの秘伝の数式が善い by 👤
レスを投稿する

レス数が900を超えています。1000を超えると表示できなくなるよ。