自分で使用するタグを定義するのか、それともソフトウェアに、表示されるオブジェクトなどに関する「常識的な」タグのユニバーサルセットを使用させるのかは完全には明確ではありません。
独自のタグのセットを定義するとします。タグは、写真が撮影された年の季節、画像に関連付けられたムード(配色や描写されたオブジェクトなどに基づく)、または区別する必要のある技術的なものにすることができます。 (ヌード、ディテール、背景タイプなど)。
これには機械学習を使用できます!これは、画像の多くの例を示すときにルール(画像にタグを付ける方法など、非常に複雑なルールでも)を学習する人工知能のブランチです。したがって、主な手順は、必要なタグごとに一連のサンプル画像を収集することです。
これを行うと、画像には2つの主なオプションがあります。
問題にニューラルネットワークを適用できるディープラーニングフレームワークを使用します。データを小さな部分に分割し、かなりのコーディングを行う必要があります。画像がたくさんない場合は、さまざまなトリックを使用して、タスクをうまく学習させる必要があります。研究に興味がない限り、今注目しているのはcaffeとTensorFlowです(1年前は推奨事項が異なり、1年後にはまた異なる可能性があります)。
おっしゃるように、オンラインAPIを使用してください。しかし、独自の一連のタスクが必要なタスクの場合、ほとんどのサービスは一般的な分類を行うだけなので、多くのオプションはありません。画像上で検出された「日常」のオブジェクトに基づいて画像を並べ替えます(場合によっては特別なものもあります)。 NSFWのような場合ですが、多くの場合、希望する感度レベルではありません)。
WebベースのAPIのオプションはvize.itです。これは、サンプル画像をアップロードしてラベルを付けることができるWebインターフェイスを提供し、指定したタグを生成する独自のAIAPIをトレーニングできるようにします。だから、あなたは両方の世界の長所を手に入れています。残念ながら、完全に無料というわけではありませんが、このプランは少量の画像に対してかなり低コストであり、最初に無料のサンプルを入手できます(さらにトレーニングプロセスも無料です)。
免責事項:私はvize.itの共同作成者の1人です。