日々適当

hibitekitou

年賀状、どうしよう。

mac |2022-12-31

もう自力で手描きする以外、年賀状の図柄を作るタイミングを完全に逸しているのだけど、ならばAI先輩に書いてもらおうと思った時、Stable Diffusion ってのが夏あたりから話題になってて、で、AppleがStable DiffusionをCoreML向けに最適化したものを配布しているのが以下のサイトです。これを利用しましょう。

apple/ml-stable-diffusion: Stable Diffusion with Core ML on Apple Silicon<[GitHub]/p>

そしてこれをターミナルから利用できるように解説した先人の記事がこちらになります。

【Swift】Core ML Stable Diffusionを使ってみた(Apple Silicon) [thwork]

ありがたいあのでそのままの手順でセットアップします。機械学習方面に全くの素人の私は「tokenizersのデータを取得して下さい。」で行き詰まるわけですが、ここ[GitHub]で配布されているもののようです。zipでダウンロードしてデスクトップとかで展開し、あと先のページの指示通りにpipを走らせるところまで行います。
その工程の後、Appleのとこからml-stable-diffusionを落とすのも同じようにzipをダウンロードです(^^;
次に素人がつまずくのはHugging Face云々のところですけど、そのサービスのユーザーアクセストークンってのが必要になるのでそれを取得しておきます。適当な文字列が並んだだけの意味のない文字列に見えるものが生成されるはずです。
その後のモデル変換は時間こそかかるけど特に問題なし。で、画像を生成できるようになりました。

ってことで実行です。上記サイトの命令のうち--promptとi と-oオプション に適切な値を設定してやります。iとoは適切な値があるけど、--promptは試行錯誤ですがね。oオプションはモデル変換を行ったディレクトリ。iは画像を出力するディレクトリの指定です。

とりあえず動作することは確認。

python -m python_coreml_stable_diffusion.pipeline --prompt "anime of Kawaii profile rabbit pixiv niconico artstation deviantart newgrounds tumblr rim light greg rutkowski trending on Artstation HQ" -i /Users/userName/Desktop/StableDiffusionCoreML/models -o ~/Desktop/outputimg --compute-unit ALL --seed 93

GPUを使って演算してくれているのが確認できます。M1 MacBook Airなもんで、遅いですが…
欲しいのはうさぎさんなので、人物が出てきそうな値を削ってみます。"profile rabbit pixiv niconico artstation deviantart newgrounds tumblr rim light greg rutkowski trending on Artstation HQ"

急に可愛くない姿になりました…。まあこんな感じでいい図を探していけば、やがて年賀状にふさわしい図柄できるはずと信じて、今日はこれをやっていきましょう(^^;

ちなみに、せっかくmacOSに最適化をかけたのだから、Swiftでもやっておかないとですか?

swift run StableDiffusionSample \
"a page from music rough sketch on memo paper analog illust a pencil by side concept idea of profile rabbit pixiv, waifu, anime cover art, , character art portrait, trending on artstation, realistic shaded, sharp focus in notebook photography" \
--resource-path  /Users/userName/Desktop/StableDiffusionCoreML/models/Resources/ \
--seed 93 \
--output-path ~/Desktop/outputimg \
--compute-units cpuAndNeuralEngine

うさぎだが、年賀状って感じじゃないか…。呪文の書き方がわからん。Swiftの方が早いすね。
まあでも、環境構築にこんな面倒なことをしなくても、Core ML Stable Diffusionを利用したGUIアプリの開発が進んでいるようですし(Core ML Stable Diffusionを利用し、Apple Silicon Mac上でテキストや入力画像から画像を生成できるアプリ「Prompt To Image」がBetaテスターを募集中。[Apple Ch.])、ハードルは一気に下がるのでしょうね。

コメント ( 0 )|Trackback ( )

縞々

cg |2022-12-28

しましま作りたかったので、そのメモ。

UVのU方向の値を参考にしてサインでぐにゃっと。
とかやりつつ、まだよくわかってない…

コメント ( 0 )|Trackback ( )

スイッチが死んだのかと思った

与太話 |2022-12-24

自宅LAN回線は長い間敷きっぱなしで壁の中を通っているケーブルなんてCat5だったりするわけです(敷き直したいけど面倒臭い)。そんなわけで使っているスイッチも古くてcoregaのCG-SW08GTPが稼働してて、ググってみると発売日は2004年4月ですと。
昨日、そのスイッチにぶらさがっているマシンでネット接続しようとするもなんだか不安定で、そのうち繋がらなくなりました。2台のマシンが繋がらなくなってました。印象として徐々に繋がらなくなったような感じで、これは壊れた瞬間に立ち会ってしまったか?って思ったわけです。
結論としてはそれは勘違いで、そのcoregaのスイッチの下にさらに小さいNETGEARのスイッチがぶら下がってて、それの電源アダプタのコネクタが緩んでいたのが原因でした。そのNETGEARのスイッチは5ポートの最小サイズクラスのもので、故に存在を忘れてました。そのNETGEARのの近くに置いてあった機器をそういえば最近ゴソゴソを触っていたので、そのせいで緩んだのでしょう。で、ネットが不安定だなぁとケーブルをゴソゴソしたせいでNETGEARのスイッチへの電力供給がさらに不安定になったと。けれどもその存在を忘れていたせいで疑いをcoregaのスイッチにむけてしまいました。

とはいえそのスイッチはあまりに古いから交換すべきなのかもしれないのも事実。(古い製品ゆえネット上に公式の詳細スペックが出ていないのだけど、ググった結果)最大消費電力は18Wとあり、例えば同じポート数で2.5GBASE-Tに対応したプラネックスのFX2G-08EM[planex.co.jp] は14.93Wとちょっと小さくなり、まあこれは最大消費電力だからそんな電力は使ってないとしても月額に直すと数十円の電気代の差になりましょう。うーん、しばらくこのままでいいような気がしてきた…
まあでも壁の中のケーブルをCat7クラスのに交換して2.5GBASE-Tのスイッチに交換するのは近々やっておきたいわけです。さてさて、どこの製品がいいのか。今うごているcoregaの製品は発売日の翌年に買ったとしても17年稼働しているわけで、それに匹敵する安心の製品は何がありますかねぇ。

コメント ( 0 )|Trackback ( )

Blenderに外部モジュールをインストールする

cg |2022-12-23

Pythonでモジュールのインストールを行うときはpipを使うのが一般的ですけど、Blenderで動作するPythonにはpipが付属してませんから、それを入れる必要があります。get-pip.pyってスクリプトをBlenderのPythonから実行してやると適切な場所にpipが入ります。
まずはget-pip.pyをダウンロードします。適当なディレクトリで

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

とすると、そのディレクトリにget-pip.pyが出来上がります。で、BlenderのPythonでそれを実行します。

pathToBlender.app/Contents/Resources/[Version]/python/bin/[pythonのバイナリ] get-pip.py

例えば僕はBlender 3.4を /Applications/Blender\ 3.4 に置いているので

/Applications/Blender\ 3.4/Blender.app/Contents/Resources/3.4/python/bin/python3.10 get-pip.py

というコマンドになります。これで python3.10 があるのと同じ場所に pip や wheel が入ります。
ちなみに、このやり方だとBlenderのマイナーアップデートが出てそれを上書きで入れ替えると、当然その中のpipも消えるので諸々入れ直しです。

で、モジュールのインストールです。BlenderのPythonのパスを入れるのが面倒なんで、それがあるディレクトリに移動しておくのがいいでしょう。その上で、例えば、OpenCVとTriangleってモジュールを入れるなら、そこ(さっき入れたpipのあるディレクトリ)で

./pip install opencv-python
./pip install triangle

でOK。これらモジュールもBlender.app内部に入っちゃうので上書きでBlender.appを入れたら入れ直しになります。以上で Tesselate_texture_plane[GitHub] をBlender 3.4にインストールの準備ができるわけですな。3.4にも無事入りました。

コメント ( 0 )|Trackback ( )

M2 Extremeをキャンセル?

mac |2022-12-19

Apple、新型「Mac Pro」へのM2 Extremeチップ搭載を断念か − メモリやストレージは拡張可能に?? [気になる、記になる…]

まあ噂ですけど、M2 Ultraをさらに倍にしたExtremeってのを開発していたけど大変すぎるからキャンセルしたってことらしく、Mac ProはM2 Ultraで開発が進められているという内容。
まあありうる事態だろうけど、ハイエンドを名乗るには、つまりはシングルチップ用XeonやThreadripperと対抗するには弱いように思えますなぁ。

ちなみに、その噂の出所によるとメモリやストレージ、その他コンポーネントの追加を可能にするとあります。その他コンポーネントは普通にPCIeなのでしょう。メモリについてはいわゆるPCのメモリじゃないような気もするけど、高くつきそう…

物凄い静かなマシンになることは間違いないでしょうから一定の需要はあるでしょうが、事実とすれば残念です。

あるいはM2 UltraはMac Studioの筐体には収まらない熱を持つとかはありそうですけどね(^^; M2 Ultraを積んだMac Studioは出るのかはちょっと注目かもです(コア数が少ないバージョンのM2 Ultra搭載のものを出すのはありえそう?)。

コメント ( 0 )|Trackback ( )

固定電話

与太話 |2022-12-18

うちには固定電話がありまして、で、その電話機の挙動が最近ちょっと変らしく、ために新しいのを買いました。
すぐに納品される電話機を急いで探したのだけど、今、電話機ってあんまり作られていないんだなぁってのを感じました。パナソニックとシャープぐらい?って感じです。あとはオーム電機?。電話帳機能を内部に持ち、子機を複数持てるって条件だと選択肢から外れちゃいますが。
まあそんな条件で調べた結果、シャープのがすぐに(2,3日)で届くということでそれを注文。今日届きました。
設置自体はとても簡単なのだけど、電話帳をプチプチとダイヤルボタンを押して入力させるのはどうにかならないものなのか。パナソニックが以前の機種でSDカードに電話帳を移してそれをパソコンで編集することができるモデルを出していたけど、その後継である現行機はできなくなっているようで、需要がないのかねぇとは思いつつ、どうにかならんのかと思ったりします。

携帯電話の電話帳はMac上の連絡先.appと同期しているため、Mac上で簡単に入力できるし、iPhone上でも電話機ほどのストレスなく入力できるため、それを知ってしまうとなんで同じ電話番号を管理する機能なのにって恨めしく思うわけです。

まあ販売数は右肩下がりだろうし、若者は買ってないだろうしで開発意欲も薄いんだろうなとは思うけど。そうそう壊れるものじゃないから買い替え需要ってのもなかなか進まないだろうし。今回挙動がおかしくなった電話、発売日が2007年の10月ですから、2010年に買ったとしても12年使っていたわけで。

コメント ( 0 )|Trackback ( )

カメラ方向の見た目をベイクする

cg |2022-12-17

Blender 3.4のリリースノート[Blender Developer Wiki] にこう書かれてます。

Baking: new option to bake specular effects from the active camera view, instead of above the surface. This may be useful when baking textures that will be viewed from a fixed position or with limited camera motion.

アクティブなカメラからの鏡面効果をベイクするためのオプションが追加されたわけです。

3.3と3.4のベイクの設定部分を並べると、View From ってオプションが3.4に追加されていることに気づきます。そこではActive Cameraってパラメータを選べ、それが新機能ということっすね。従来のはAbove Surfaceなのだと思います。

鏡面反射をリアルタイムに計算する場合にはこのオプションの意味はないのですけど、そうじゃない場合やそれができない描画システムではこれができるのとできないのとでは画面の説得力がだいぶ変わってくると思うのですよ。

上図一番左の位置でView FromをActive Cameraにしてベイクしたのが一番右、真ん中は従来のAbove Surfaceです。ハイライト、あるいは目玉の反射の入り方に注目です。Active Cameraの方はテクスチャ解像度が負けている以外はかなりいい感じに再現されているのに対し、Above Surfaceは強いハイライトの位置や目玉の反射の見え方にだいぶ差が生じており、ベイク元と同じ場所に設置した時の「そこにある感」が軽減されてしまうことが予想されます。一方でActive Cameraの方はベイク元と同じ場所に置いた時、カメラが大きく動かなければかなり説得力のある見た目になるでしょう。

ということで、これは嬉しい新機能なのでした(Softimage民としては、え?できなかったの?なんだけど。まあSIのはカメラから見えない部分が塗られないという面倒な仕様だった記憶があるけど)

カメラや光源が大きく変化すると、焼き付けたハイライトなどが単なる模様に見えてしまってよろしくないので、使い所は考えないとです。

コメント ( 0 )|Trackback ( )

Metal 2と3

mac |2022-12-13

そういえばMacBook Pro 2018のシステムレポートを見ていて初めて気づいたのだけど、MacBook Pro 2018のRadeon Pro 560XはMetal 2までの対応なんすね。CPU内蔵のIntel UHD Graphics 630はMetal 3となってます。

Metal 3はVenturaから使用できるAPIですけど、AMDのGPUではVega以降ということになる模様。iMacは2017から対応ってなっているけど、iMacのAMDのGPUは500シリーズだから、CPU内蔵のを使うってことなのかな?

コメント ( 0 )|Trackback ( )

KVMを買った

pc |2022-12-13

ちょと前にKVMを買いまいた。一応ATENって名の通ったメーカーの安いモデルです。安いのでケーブルが本体にくっついているタイプ。

CS52DP [ATEN Japan]

こいつのミソは、ディスプレイケーブルが一個はDisplayportでもう一個がUSB-Cってことです。MacBook ProとWindows PCのディスプレイ・キーボード・マウスを共有しようとしている関係上、都合のいい仕様ということになります。また4K60Hzに対応しているというのも重要ですね。4K解像度のディスプレイを共有しようとしているので。

繋いでみたところ、macOSのシステムレポートでは30ビットカラーでの出力がされていることを確認できているのでたぶん必要な性能は出ているのだと思います。また、MacBook Pro側がUSB-Cなのでケーブルがシンプルにまとまるのもいい感じです。アナログオーディオケーブルが付属するのですがそれが邪魔なくらいですね。ATENは2台用のKVMで両方ともUSB-Cという機械も出してて、そっちはアナログオーディオケーブルがついてなくてとてもスッキリしてます。Windows PC側もUSB-C出力できるからそっちで良かったかも。まあまだ発売されてないみたいだけど。

残念なのは、これはMacBook Proの本体側のモニタも使用しているせいで感じちゃうのだけど、接続をMacBook Proじゃない方に切り替えた時、MacBook Proの本体側のモニタに外付けモニタに展開されているウインドウが集約されちゃうことですか。ディスプレイが外れたとMacに判断されちゃう。これはWindowsでもLinuxでも同様の事態が起こるでしょう。ATENではVideo Dynamic Syncって呼んでいるみたいですけど、それがついてない。前述した両方ともUSB-Cの機械はそれに対応しているようで、まあそっちはまだ売られていない新製品のようなので、発売されたら検討してみましょうか。

でも全体的には満足度高いかもですよ。

コメント ( 0 )|Trackback ( )

M2 Pro/Max製品の姿が見えつつある?

mac |2022-12-12

遅れているM2の上位性能のSoCですけど、少し姿が見えてきたように見える最近です。

未発表Macの機種IDがSteamのデータベースから2つ見つかる − 次期MacBook Proなどか [気になる、記になる…]

これが一番新しい情報ですけど、機種IDが未発表のモデルがテストされているのではないかという情報が出てきました。それに先駆けM2 Maxを積んだマシンのベンチマーク結果とされるデータがGeekBenchのデータベースに登場してきたってのが先月末のお話っすね。

次期MacBook Pro?? − M2 Maxチップを搭載した未発表Macのベンチマークデータが明らかに [気になる、記になる…]

最初に出てきた数字はM1 Maxと比較してそれほど性能が上がっていないことを示唆する数字でしたけど、次に出てきた

M2 Maxチップを搭載した新型Macの新たなベンチマークデータが明らかに − CPUの動作周波数が向上 [気になる、記になる…]

ではクロック周波数が上がりスコアがそれなりに上がってて、これならまあまあ納得的できる性能かな?て気分になるかもしれません。
発売時期は迫っているのかもしれず、2021年10月発売から1年半近くになる来年3月あたりまでにはMacBook Proの14インチ/16インチの後継は来て欲しいっすね。MacStudioは今年3月だからもうちょっと間空いてもいいけど(うちのマシンが旧型になるのは忍びないし(^^;)、その上でMac Proの展望を早く見せてくれるといいなぁと思うわけです。

あ、M2 ProとかMaxを積んだMac miniも出て欲しいかなぁ(MacStuidoでは分厚すぎるってところに収まる筐体のそこそこパワーあるマシンが欲しいとか思う)

コメント ( 2 )|Trackback ( )
« 前ページ・