Чтобы проверить, совпадают ли два файла изображений… Контрольная сумма или хеш?

Я выполняю код обработки изображений, в котором я загружаю некоторые изображения (как BufferedIm age) из URL-адресов и передать его процессору изображений.

Я хочу избежать передачи одного и того же изображения процессору изображений более одного раза (поскольку операция обработки изображения имеет высокую стоимость). Конечные точки URL-адресов изображений (если это одни и те же изображения) могут отличаться, и, следовательно, я могу предотвратить это с помощью URL-адреса. Поэтому я планировал вычислить контрольную сумму или хеш, чтобы определить, встречается ли код снова с тем же изображением.

Для md5 я попробовал Fast MD5 , и он сгенерировал шестнадцатеричное значение контрольной суммы длиной 20К + символов для изображение (какой-то образец). Очевидно, что хранение этого хэша из 20К + будет проблемой, когда дело доходит до хранения базы данных. Поэтому я попробовал CRC32 (из java.util.zip.CRC32). И он сгенерировал контрольную сумму гораздо меньшей длины, чем хэш.

Я понимаю, что контрольная сумма и хеш используются для разных целей. Могу ли я просто использовать CRC32 для целей, описанных выше? Решит ли это цель, или мне придется попробовать нечто большее, чем эти два?

Спасибо, Abi

8
задан Abhishek 17 June 2011 в 06:37
поделиться