0

画像をさまざまな画像と比較し、それらが等しい場合は何かを行う必要があります (画像認識はまったく必要ありません。2 つの 100% 完全に等しい画像を比較するだけで済みます)。私の最善の策は、画像を base64 にエンコードしてから、その文字列を別の文字列と比較することです。

画像を別の画像と比較する必要があり、次に別の画像、次に別の画像というように、完全に一致するものを見つけるたびに停止します。私の計画は、64 個の文字列ごとに配列に格納し、各アイテムの対象画像を比較することです。理論的には計画は素晴らしいですが、何か心配です。文字列の長さは 852754 文字です。つまり、非常に長くなるということです。非常に遅い。それを行う代替方法はありますか?

画像を自分のコンピューターに保存したいとさえ思っています。それが何かの助けになるなら、200 か 300 枚ほどありますが、それほど多くはありません。

4

3 に答える 3

1

これは、 MD5 実装のようなもので文字列をハッシュすることによって実行できます (もちろん、852754 の長さの文字列を考えると、ここでのエントロピーは問題になる可能性があります) 。より高速なチェックサム ( crc32 関数のようなもの) を使用することも考えられます。

ハッシュを生成するためのお気に入りの方法を使用し、いくつかを生成した後、ハッシュを比較するだけです (はるかに高速になります)。

于 2013-02-16T23:40:21.253 に答える
0

これが、一方向ハッシュ アルゴリズムがある理由です。画像データをハッシュするライブラリを見つける必要があります (例: md5)。これらを簡単に保存して、すばやく比較できます。

md5 の一致がある場合は、念のためにデータを比較できます (可能性はありますが、誤った一致を与える衝突が発生する可能性は非常に低いです)。

于 2013-02-16T23:41:01.730 に答える
0

私があなたの質問をよく理解していれば、要素に対してgetBase64Image()メソッドを使用できますvar myimage = new Image()

于 2013-02-16T23:41:56.413 に答える