Base64から画像デコードの方法

Base64の文字列を画像にデコードをしたいのですが
実装方法をご存知の方ご教示頂きたいです。

下記のサイトの様なことをBubbleのワークフロー上で実施したいです。

こちらでご紹介されているプラグインでは、画像変換はできなかったと思うのですが、
やり方の問題でしょうか。

お手数をおかけしますが、宜しくお願い致します。

こんばんは、

ちょっと試したところ、こちらのbase64というプラグインを使って
デコードできました

①準備プラグインを入れる
こちらのbase64というプラグインをいれる

②確認用
■変換用後の保存先用にcustom stateを準備
画像をbase64化した化したテキストを保存するcustom state:encode-test (text型)
デコードした画像ファイルを保存するcustom state:image-test (image型)

■画像アップアップロード用に
・Picture uploadを貼る
・画像をbase64化したテキストを表示するtextを貼る(custom stateのencode-testの値を表示するように設定)
・デコードした画像を表示するimageをはる(custom stateのimage-testの値を表示するように設定)

③ワークフローで 画像をbase64のテキストにencode


④ワークフローでbase64のテキストを画像にdecode


「いいね!」 3

ご返信ありがとうございます!

ご教示頂いた形の事は出来ましたが
私が受け取っているBase64のテキストを画像に変換することは出来ませんでした・・・
(紹介いただいたpluginで画像からエンコードして、さらに同じプラグインでデコードした際は、同じ画像は出力できました。)

私が受け取っているBase64テキストは非常に長く、Pluginでエンコードしたのよりもかなり長いです。これが良くないのでしょうか。

私のBase64のテキストは、下記で画像をエンコードした形と似ておりまして

恐らくこのテキストがデコードできれば、画像出力できると思うのですが・・・
(実際に出力したいBase64のTextをお見せしたいのですが、ここでは長すぎて共有できなくDiscordとかでしたら可能でしょうか)

お手数をおかけし恐縮ですが、ご確認ご教示頂けますと幸いです。

こんばんわ

今回の質問の背景を教えていただけますか。
・何を実現しようとしていますか。
・そのうえで、どうしてbase64を利用しようとしていますか。

サイズの大きなデータを使おうとしているのであれば、
base64を使う以外の解決策の方がよいのではないかと考えています。

「いいね!」 1

Stable Diffusion(SD) というAI画像生成のAPIと繋いでいます。
APIでSDから画像データを受け取るのですが
それがBase64のデータとして受け取りになっているので、それをどうにかBubble上で通常のファイル(png)に変換・表示させたいと思っております。

他に必要情報があればご教示頂けますと幸いです。
宜しくお願い致します。

返信ありがとうございます。

「Stable Diffusion bubble.io」でGoogle検索したところ
次の動画がでてきました。

ざっと流して見たところ、この動画のやり方できそうなので試してみてもらえますか。

検索ありがとうございます。

以前、まさにその動画でAPIと接続していたんですが
そのAPIでは画像生成の質が良くなかった為、使うのを辞めた経緯がありまして。。。
今は、下記をgoogle colaboratoryで起動して接続を試みています。

接続自体ははできたのですが、画像データがBase64で出てくるで困っているという状況なんです。

一旦、状況の切り分けをした方がいいと思います。

Stable Diffusionから出力されえるbase64のデータが本当にbase64のデータなのか、
壊れていないのかが気になります。

■確認事項
そのデータをbubble.ioを使わないで画像に変換する処理があれば、
変換して意図した画像が出るか確認してもらえますか。

例えば、貼ってくれていたリンクの先にある
Base64→画像デコードで変換してもらうとか

受け取っているデータを下記に入れても上手く表示されています!

なので、コードが壊れてはいないと思いました。

私が受け取っているBase64テキストは非常に長く、Pluginでエンコードしたのよりもかなり長いです。これが良くないのでしょうか。

→ こちらの可能性はあります。

Stable Diffusion(?)から出力されれるbase64のテキストと
bubble.io側で変換する部分で、どこかがかみ合っていないのだと思います。

なので、処理を一つ一つ確認していってもらう感じになるかと思います。

後は次のいづれかで対応するか。。
パターン1)こちらがおすすめですね。。
google colaboratory側でbase64のをファイルに変換してから
bubble.ioに渡してはどうですか。

パターン2)おすすめしないですが。。
base64のテキストをそのままhtmlのimgタグに設定して表示する
関連リンク:

「いいね!」 1

ありがとうございます。確認してみたいと思います。

Base64の文字列を画像にデコード方法


以前、ご質問させて頂いた内容ですが
こちらのプラグインで解決することができました。

「いいね!」 2

報告ありがとうございます!!