|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
_Vasilisk_ Потому что при общем количестве 10000 иконок разницы между 3 и 10 нет Другое дело если уникальных десятки. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2021, 19:23 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
_Vasilisk_Вот это уже ближе к делу. Бери сразу пять. Чтобы время их вычисления окончательно сравнялось со временем сравнения, а суммарный размер - с размером самой иконки. И будет тебе счастье, ага... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2021, 19:55 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Чтобы время их вычисления окончательно сравнялось со временем сравнения, ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2021, 20:23 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
_Vasilisk_ А значит для каждой иконки CompareMem пробежит все байты ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2021, 21:52 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
_Vasilisk_ Dimitry Sibiryakov Чтобы время их вычисления окончательно сравнялось со временем сравнения, ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2021, 21:57 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
Гм... Я тоже подумываю над подобной задачей, правда пока не приступал. Думаю использование хэшей обязательно (по крайней мере для моей задачи) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2021, 22:08 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
Каждый файл ico может содержать до 65 535 изображений. Т.обр. если картинка 32х32, то общее максимальное количество пикселей может достигать 65535*32*32. Пусть каждый пиксель будет 4 байта... файлик получится размером 268 435 456 байт. 10-20 тыс иконок... э... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 00:23 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
ъъъъъ Каждый файл ico _Vasilisk_ Есть набор png иконок ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 00:38 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
_Vasilisk_, вот я лошара... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 01:15 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
Задача очень похожа на дедубликацию файлов на диске. На сегодня это уже решенная задача. Там - нечего изобретать. Берите утилиты dedup (тысячи их). ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 09:15 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
mayton Задача очень похожа на дедубликацию файлов на диске. На сегодня это уже решенная задача. _Vasilisk_ Они все в памяти. В объектах GDI+ ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 10:42 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
_Vasilisk_ Не путаю. Но они неотличимы без сравнения данных Отличимы тем, что вероятность одного стремится к нулю. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 11:50 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
Но достигнет нуля только в случае когда размер хэша сравняется с размером хэшируемых данных. А по условиям задачи ложноотрицательные ответы недопустимы. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 13:28 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
Ну этак надо от всех хешей вообще избавиться, ведь есть 0.00000001% шанс совпадения на реальных данных ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 14:05 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
Сделал на CompareMem, посмотрел на результаты. На 10 000 иконок 16х16 время обнаружения дубликатов стабильно 100 миллисекунд вне зависимости от количества уникальных иконок. Проверял для 1, 5, 10, 20 уникальных иконок. На вариант с поиском по хешу (без проверки коллизий) уходит 168 миллисекунд также вне зависимости от количества уникальных иконок ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 14:07 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
Вот итоговый класс Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 14:12 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
_Vasilisk_, Прикольно, а с хешами какой код? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 14:29 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
rgreat а с хешами какой код? Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 14:40 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
_Vasilisk_, Можно подоптимизировать, наверно. Например, Length(AIcon) 2 раза вызывается, а можно сделать один. Ну и, раз кол-во одинаковых не влияет, значит время тратится вообще не на сравнение. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 15:34 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
_Vasilisk_ mayton Задача очень похожа на дедубликацию файлов на диске. На сегодня это уже решенная задача. _Vasilisk_ Они все в памяти. В объектах GDI+ По постановке задачи - это все выглядит как одноразовая задача. Почистить ресурсы от дублей и забыть эту задачу как страшный сон. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 15:37 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
YuRock Length(AIcon) 2 раза вызывается, а можно сделать один. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 15:42 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
mayton По постановке задачи - это все выглядит как одноразовая задача. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 15:43 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
_Vasilisk_ YuRock Length(AIcon) 2 раза вызывается, а можно сделать один. Может, конечно, я отстал от жизни. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 15:52 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
YuRock Length - всё же функция Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9.
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 16:58 |
|
Поиск уникальных png иконок
|
|||
---|---|---|---|
#18+
_Vasilisk_, я особо в детали во всех сообщениях не вникал, но правильно ли понимаю, что алгоритм без хэшей - просто по очереди перебираются иконки, сравниваются через CompareMem с уже отобранными, и если не совпадает ни с одной, то иконка добавляется. А с хэшем - считается хэш каждой иконки и сравниваются хеши. Т.е. как бы выигрыш по скорости, что хэш считается 1 раз для иконки, а если 10 уникальных, то потом 10 сравнений хэшей, а не 10 сравнений CompareMem. И 1-ый вариант, без хэшей, на реальных данных сейчас получается быстрее? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 17:29 |
|
|
start [/forum/topic.php?fid=58&msg=40111155&tid=2036882]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 270ms |
total: | 403ms |
0 / 0 |