第817回参考書を片手にUbuntuでもStable Diffusion WebUIを動作させ、画像を生成する あわしろいくや 2024-06-12
![連載:Ubuntu Weekly Recipe|gihyo.jp … 技術評論社](https://cdn-ak-scissors.b.st-hatena.com/image/square/7241c583676d54fc052c4388a6edd25e4c7f280b/height=288;version=1;width=512/https%3A%2F%2Fgihyo.jp%2Fassets%2Fimages%2Fgihyojp-ogp.png)
今回は仮想マシンのフロントエンドであるGNOME Boxesを紹介します。シンプルさが売りですが、必要な機能は備えています。 GNOME Boxesとは GNOME BoxesはQEMU/KVM/libvirtを組み合わせた仮想環境のフロントエンドです。GNOMEアプリケーションの一つとして、原則としてGNOMEと同時にリリースされており、本記事の公開時点で最新の安定版は3.32.2です。すなわちバージョンもGNOMEと同じです。 QEMU/KVM/libvirtのフロントエンドといえばVirt Managerが有名ですが、GNOME Boxesはただひたすらにシンプルなのが特徴です。さまざまな仮想マシン環境(ハイパーバイザー)がありますが、いろんなLinuxディストリビューションを気軽に試したいのであれば、GNOME Boxesがベストでしょう。今回は試しませんが、バックエンドがQEMU
広く使われているマシンエミュレーターであるQEMUには、3Dアクセラレーションに対応した仮想GPUを作る機能が存在します。そこで今回はこの機能を使って、ゲストマシン上でOpenGLベンチマークツールを動かしてみましょう。 QEMU/KVMと3D GPU QEMU/KVMはLinux用に広く使われているマシンエミュレーターです。たとえば仮想マシン管理ツールであるlibvirt/virt-managerや、libvirtのGNOME製フロントエンドであり第572回「GNOME Boxesを使用する」でも紹介されている「GNOME Boxes」は、QEMU/KVMをバックエンドとして利用しています。同様に第590回「Windows/macOS/Linuxで使える仮想マシン管理ツール『multipass』」で紹介したmultipassも、Linux版のバックエンドはQEMU/KVMです。 Vi
第626回の「UbuntuでもSteamのWindowsゲームを!」では、SteamならUbuntu上でもWindowsゲームをプレイできる可能性が高いことを示しました。今回はSteamそのものをLXDコンテナの中に閉じ込めて実行してみましょう。 ホストをできるだけキレイに保つために Steamのインストーラーはソースが公開されているものの、ゲーム自体はもちろんのこと、Steamクライアントやランタイムの一部はプロプライエタリなソフトウェアです。このためホスト上で実行することに抵抗があるかもしれません。また、Steam側の制約でホスト上に32bitライブラリが必要です。よってSteamそのものをコンテナに閉じ込められるとホストをクリーンに保てます[1]。ひとつの方法は非公式のFlatpak版パッケージを使うことです。本記事ではLXDコンテナの中で公式のSteamクライアントを、GPUアク
第521回ではUbuntu 18.04 LTSに最初からインストールされているコンテナ管理システムLXDについて紹介しました。今回はコンテナの中からホスト上のGPUデバイスを利用する方法を紹介しましょう。 コンテナから見えるデバイス LXDで作成したコンテナからアクセスできるデバイスは、システムが起動するために必要なものだけに制限されています。 container$ ls /dev/ console full log net pts stderr tty core fuse lxd null random stdin urandom fd initctl mqueue ptmx shm stdout zero しかしながらコンテナの中からもホスト上に見えているデバイスにアクセスできると嬉しい場合は多々あります。LXD 2.0以前でこれを行おうとするといろいろと細かい設定が必要でした。ところ
今回も前回に引き続き、「ターミナルそのもの」に関するレシピをお届けします。 Emacsからターミナルを呼び出す 第32回・第33回で紹介したように、geditやKateといったテキストエディタにはターミナルを組み込んだ状態で利用することができます。 テキストエディタを頻繁に利用する場合はこれらを利用した方が便利でしょう。 EmacsでもgeditやKateと同様に、組み込みターミナルを利用することができます。Emacsでターミナルを利用する場合は複数の方法があり、それぞれ特性が異なります。 Emacs::shell Emacsのごく標準的な組み込みターミナルは、M-x shellで起動することができます(図1)。 図1 M-x shell しかし、上記のスクリーンショットでも部分的に文字が化けている通り、このモードはターミナルとしての機能に制限があります。端的には[tab]による補完
第1回、第2回と画像認識の基礎とOpenCVについて紹介してきました。第3回目の今回は、いよいよ本連載の目玉であるOpenCVを使ったオブジェクト検出に挑戦してみます。 オブジェクト検出の仕組み 基本原理のおさらい オブジェクト検出のプログラムを書き始める前に、そもそもどんな仕組みでオブジェクト検出を行っているのかを理解しましょう。 第1回では画像認識の原理として、学習フェーズと認識フェーズがあることを説明しましたが、OpenCVに実装されているオブジェクト検出プログラムもこの流れに従います。つまり、画像から特徴量を抽出し、学習アルゴリズムによってオブジェクトを学習します(詳しくは第1回を参照してください)。 図1 画像認識の流れ OpenCVに実装されているオブジェクト検出プログラムは、Paul Violaらのオブジェクト検出の研究[1]をベースに、Rainer Lienhartらが
はじめに 今回はいよいよ、アプリケーションを作りながら、OpenIDの実践的な使い方を解説します。サンプルとして作成するアプリケーションは、ミニブログと呼ばれるつぶやきブログです。いわゆるTwitterクローンです。利用者はミニブログにログインして、一言つぶやきます。ブログの一種ですので、当然ユーザ認証が必要になります。普通はパスワードを用いた認証が一般的ですが、今回はOpenIDを用いてユーザを認証するようにアプリケーションを作成していきます。 さて、認証と簡単に言いましたが、認証に必要となる機能をもう少し具体的に列挙してみましょう。 ユーザ登録 サービスを利用するために必要な情報(IDやメールアドレスなど)を利用者に入力してもらい、データベースへ登録する。 ログイン(認証) 利用者が入力した認証情報(パスワードなど)を元に利用者を認証し、ログインの可否を判定する。ログインに成功した利用
操作方法 → キー: 次のページへ ← キー: 前のページへ ↑ キー: 目次ページへ ↓ キー: 目次ページから戻る 目次ページでは ← → キーで一覧を移動し、クリックで選択します
他のライブラリや、自分のコードと共存させるときは、これらの名前と衝突しないように気をつける必要があります。同じ名前を使ってしまうと、コードがロードされた順番によって挙動が変わる、というようなわかりにくい問題が発生してしまう場合が出てきます。 オブジェクト、クラスの使われ方 ライブラリ内では、上記の名前空間は大きく分けて以下のような使われ形をしています。 その下に別のオブジェクトを入れるための親名前空間として使う Class.create()を使って Prototypeライブラリ風のクラスとして定義する Object.extend()を使って他のクラス、オブジェクトから継承されることを前提とする関数を集める コードを簡潔に記述する為に短い名前の関数として使う 特に、Object.extend()を使って継承を実現している箇所が多く、最終的にどのオブジェクト・クラスにどのメソッドが定義されてい
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く