OpenCVは Computer Vision のフレームワークであり、クールなフィルターのほとんどを自分で作成する必要があるため、必要なものが非常に限られています。それにもかかわらず、画像をぼかしたり、コントラストを変更したり、グレースケールに変換したり、反転したり、トリミングしたり、しきい値を設定したり、侵食したり、膨張させたり、サイズを変更したり、回転させたり、色を分離したり、合成したりするためのいくつかのテクニックを提供します. フィルターの実装方法を理解していただくために、私は最近OpenCV を使用して Displacement Map Filter を実装しました。
FFmpegにもいくつかの フィルターがありますが、オーディオとビデオを記録、変換、およびストリーミングするためのクロスプラットフォーム ソリューションであることを意図しているため、実際には多くのフィルター効果は提供されません。
それにもかかわらず、どちらの API も Android でビデオ (ファイルとカメラからのストリーム) を読み取ることができ、カスタム フィルターを実行できるようにビデオ フレームへのアクセスを提供します。
アプリケーションにフィルターの膨大なコレクションをもたらすのに本当に役立つテクノロジーはImageMagickだと思います。ImageMagick は動画を処理しないため、この部分には Android のネイティブ API、OpenCV、または FFmpeg を使用できます。コマンド ライン、プログラム インターフェイス、またはスクリプトから ImageMagick を使用して、画像に対して実行できる操作の例をいくつか示します。
