オープンソース画像操作ライブラリ(Go Developers)
IF は、Go を使用している間、画像処理と操作に関しては、最も簡単なオープンソースライブラリです。
IF(Go Image Processing Toolkit)ライブラリは、画像処理と操作に依存するGoでアプリケーションを開発する場合、使用することができる最高のパッケージ化されたライブラリの1つです。 Go のスコープの外にある追加のプラグインやライブラリは必要ありません。Git から直接ダウンロードできます。
オープンソースライブラリとして、IF をソフトウェアアプリケーションに簡単に組み込むことができ、画像の検索、クロッピング、フィルタの追加、飽和の増減などの画像処理機能を容易にできます。
同様に、ツールキットに既に追加したフィルタを使用して、新しいフィルタや新しいイメージを作成することもできます。 使いやすく、軽量で、クロスプラットフォームの互換性や微調整を必要としません。 開発者がGoで快適に使えるのに最適なオープンソースライブラリです。
IF入門
IFをインストールする最も簡単でお勧めの方法はGitHubを介してあります。 下記のコマンドで簡単かつスムーズなインストールができます。
GitHubでIFをインストールする
go get -u github.com/disintegration/gift
無料のGoライブラリを使用してフィルタを適用
オープンソース IF ライブラリは、ソフトウェア開発者が画像のフィルタをプログラム的に適用することを可能にします。 Draw関数の助けを借りて、すべてのフィルタとソース(src)画像の変更を適用し、宛先(dst)画像の結果として出力を提供します。 左上隅から変更が始まります。
ゴーAPIを介してColorBalanceフィルターを適用する方法
g := gift.New(
gift.ColorBalance(20, -20, 0), // +20% red, -20% green
)
dst := image.NewRGBA(g.Bounds(src.Bounds()))
g.Draw(dst, src)
画像構成を変更するライブラリを自由に移動
画像の構成を変更するには、最初にCopyOperatorである2つの機能があります。 CopyOperator では、dst イメージのピクセルをフィルタリングされた src イメージのピクセルに置き換えることができます。 上記のDraw関数の助けを借りて、この変更を適用することができます。
囲碁を経由してDrawAtフィルターで画像構成を適用
// It outputs the filtered src image to the dst image
g.DrawAt(dst, src, dst.Bounds().Min, gift.CopyOperator)
Go IF Library で演算子を使う
一方のイメージを他の人にまとめたい場合は、OverOperator 関数はジョブを実行できます。 このモードは、dst イメージの上に src イメージの透明な領域を配置したい場合に便利です。
Go Libraryで画像のコピーを作成する方法
// Create a new image with dimensions of the bgImage.
dstImage := image.NewRGBA(bgImage.Bounds())
// Copy the bgImage to the dstImage.
gift.New().Draw(dstImage, bgImage)
// Draw the fgImage over the dstImage at the (100, 100) position.
gift.New().DrawAt(dstImage, fgImage, image.Pt(100, 100), gift.OverOperator)