Amazon Web Services ブログ 2つのビデオを自動的に比較し共通のコンテンツを探し出す 2つのビデオを比較し、共通している点、異なっている点を特定することはさまざまに役立ちます。2つのビデオソースの間で共通のコンテンツを探し出すことは、次のような多くの興味深いアプリケーションへと可能性を広げます。 自身のコンテンツの、サードパーティビデオによる不正使用を調査する 1組(2つ)のビデオストリームについて、コマーシャルが異なる場合でも確実に同じ番組が流れていることを確認 2つのビデオを比較して、どれくらい共通のコンテンツが存在するかを調べる 通常、放送局ではこのような比較は手動で行われていますが、その場合1人の担当者が同時に2つのビデオをモニターする必要があります。この手作業のアプローチは面倒で時間がかかり、ミスが発生しやすいものです。 このブログでは、このタイプのビデオ比較を
要点 OpenAI CLIPの日本語モデルを作り、公開しました。ご活用ください。 CLIPとは画像とテキストの埋め込みモデル(意味を表す固定長のベクトルに変換するモデル)であり、意味が近い画像とテキスト同士が近いベクトルになるという性質を持っています。4億枚の多様な画像とテキストのペアを用いて学習されており、高いゼロショット性能を備えています。 応用例:テキストによる画像の検索、類似画像検索、画像 and/or テキストの分類、クラスタリング、画像やテキストの特徴量生成など 日本語CLIPモデルはHugging Face Model Hubからダウンロードできます。 応用方法を理解するためのサンプルコードとその解説を、4つの記事にして順次公開する予定です。進捗状況: 1/4。 日本語CLIPモデルの使い方、サンプルコード(鋭意作成中) 長くなるので使い方の解説は別の記事にしました。 すぐに
日本語CLIPクラス 日本語CLIPモデルを表すクラスを定義します。クラスは次の3つで構成されます。 ClipTextModel: CLIPのテキストエンコーダーモデル ClipVisionModel: CLIPの画像エンコーダーモデル ClipModel: CLIPモデル。ClipTextModelとClipVisionModelの両方を内包する。 どのクラスも基本構造は同じで、学習済みモデルの読み込み(__init__)、テキストや画像のエンコード(encode*)、推論(forward)、保存(save)を行うメソッドを持っています。 その中でも特に重要なのがエンコードメソッド(encode_text/encode_image/encode)です。 本記事ではエンコードメソッドの使いこなし方について例を用いて説明をしていきます。 import os import torch from
何ヶ月か前にTwitterのタイムラインに流れてきたのですが、それっきり話題を聞かないので検証してみることにしました。 ちなみに、個人的に普段使って慣れているのは、癖が少なくて扱いやすい scikit-image です。 (OpenCVはBGRがデフォルトなので基本的に避けたいですし、PILは癖が強めなのであまり好きではないです) 高速の画像処理ライブラリを使うモチベは、もちろん Kaggle です。 特に画像の読み込みが速いと、時間短縮に直結するので個人的に嬉しいです。 Lyconとは C++で書かれたPython用の軽量画像処理ライブラリらしいです。 PyPI にあるので pip install ですぐに使えます。(一応依存関係も気にしなきゃいけないかも) github.com 性能の割にスターが控えめな気がする。 試しに使ってみる 多少の実戦を仮定して、Kaggle の Notebo
Google ColaboratoryというGPUを無料で使えるサービスを使って画像認識させてみたいなと思ったので実際にやってみました。 日本語の情報はまだ少ないようなので少し苦労しましたがなんとかできました。 Colab上で画像認識させてみた結果がこちら。 人もコップも椅子も時計も全て認識してくれています。うん、いい感じです。 Google Colaboratory上の環境はこちらのページの通りに実施したらできました。ありがたやありがたや。今回は「darknet」というフレームワークを使用していますが、「Keras」を使用して動かす方法もあるようです。 ※以下のリンクではCUDA8.0をインストールするとなっていますが、この部分についてはインストールせずに既にインストールされている最新のCUDAをそのまま使用したほうがよさそうです。(2020/1/20追記) GitHub – ivang
幾何形状マッチングはOpenCVには非実装だったため、自動的に候補から除外されます。個人的にはかなり便利なマッチング方式だと思うので、実装してほしいんですけどね…。 次に、形状変化への強さは特徴点マッチングが優秀です。 テンプレートマッチングと幾何形状マッチングは、マッチングの元画像と対象画像が拡大・縮小・回転を用いて一致するものしか対応できません。 一方の特徴点マッチングは、拡大・縮小・回転に加え、せん断・歪みまで対応できます。冒頭にもあるように斜めから見た画像(=歪み変形した画像)同士を比較したいので、特徴点マッチングを採用しました。 ちなみに、拡大・縮小・回転・せん断が可能で、更に移動を実現できる変形をアフィン変換(変形)、このアフィン変換に歪み変形を加えたものを射影変換(変形)と呼びます。 画像の多くの箇所が同時に色味の変化を起こすことはないだろうと予想し、特徴点マッチングで問題な
ではせっかくなのでモデルの中身をみてみましょう.以下のコードでその中身を見ることができます. model.summary() 以下のようなモデルの構造が表示されるかと思います. Layer (type) Output Shape Param # ================================================================= input_1 (InputLayer) (None, 224, 224, 3) 0 _________________________________________________________________ block1_conv1 (Conv2D) (None, 224, 224, 64) 1792 ______________________________________________________
人間は水平・垂直な方向の線分に対して感度が高いことが知られており、これは Oblique effect と呼ばれます。人間が生活する視環境の中に水平・垂直の成分が多く含まれることがこのような視覚特性をもたらしているという可能性が指摘されています(Coppola et al., 1998)。 Coppolaらは風景画像を分析し、屋内や屋外など建築物のある風景だけでなく、人工物の無い自然風景においても水平・垂直な方位成分が多く含まれることを示しました。 Coppolaらが行った分析を R と imager を用いて再現してみましょう。 library( imager ) library( dplyr ) library( ggplot2 ) # prepare an image img = load.image( "img/scene.png" ) img = imappend( list(
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く