@nodejs_ru

Страница 418 из 2748
Andrew
11.12.2016
19:23:47
мне нравится то что можно в ноде из коробки :)

Славик
11.12.2016
19:23:55
ну и пыха так-то сессии могёт

Andrew
11.12.2016
19:24:04
хреново могёт :)

файловые вообещ лочатся, если 2 коннектами придешь по одной сессии, пока первая не отлочится, чторая ждет

Google
Andrew
11.12.2016
19:24:30
я на этом однажды несколько часов потерял, пока дошло что не так

такой вот вопрос, в ноде получается на каждый коннект как бы отдельный инстанс окружения генерируется что ли?

Славик
11.12.2016
19:25:33
мне нравится то что можно в ноде из коробки :)
да, на то и нужно знать разные технологии, чтобы грамотно их выбирать под подходящие задачи

Andrew
11.12.2016
19:25:37
может есть чо почитать на эту тему?

как эти множественные стейты и эвентлуп разруливаются

и как они могут друг с другом взаимоейдствовать

Славик
11.12.2016
19:26:19
исходники v8?

Andrew
11.12.2016
19:28:29
ну как вариант, но хотелось бы в более сжатом виде, так сказать для чайников :)

Harry
11.12.2016
19:36:41
пасаны посоветуйте какой нить поисковой scrapper, без всяких ключей шоб

Harry
11.12.2016
19:42:37
Чем плох express + cheerio?
не, мне надо чтобы пишешь запрос, а он в ответ выдавал первый результат из гугла например

Pavel
11.12.2016
19:43:00
Ну да

Google
Pavel
11.12.2016
19:43:06
забрал, распарсил, отдал

Harry
11.12.2016
19:43:36
это ж надо вручную писать :0

в 2к16

Andrew
11.12.2016
19:44:16
гугл не любит когда его парсят и старается бороться с этим

Pavel
11.12.2016
19:44:30
Я себе очень плохо представляю задачу, которая решается поиском в гугле

В смысле, её автоматизация

#вопрос Господа, подскажите, как понимать что изображенгие по ссылке изменилось? При том что ссылка не менялась. До сих пор решал вопрос сравнением хэша от base64, но щас наткнулся на то, что некоторые картинки меняются неразличимо для глаза. Их чем-то пережимают, наверное. Как можно отфильтровывать эти случаи?

Andrey
11.12.2016
19:47:18
может быть смотреть ответ от сервера? 200 и 304

вроде

или это я херню сморозил?

Andrey
11.12.2016
19:47:54
:(

Pavel
11.12.2016
19:49:30
Я скачал картинку А, перегнал её в base64, схоронил. Я скачал картинку Б, перегнал её в base64, схоронил. У картинок А и Б разный base64, но на глаз они неразличимы. Как понять что по сути это одна картинка?

А то получать такие отчёты чото не айс совсем http://puu.sh/sM1Xz/e0cc8e1065.png

Дмитрий
11.12.2016
19:51:51
Pavel
11.12.2016
19:52:42
Я и делаю

md5(base64)

Google
Andrew
11.12.2016
19:52:50
может там оптимизации какие или вотермарки лепит енджинкс например

таймстемпы например

или метаинформация меняется

побайтно сравнить попробуй бинарно

Pavel
11.12.2016
19:53:05
Ну вот да, чот такое

А чем?

попробуй MD5 с них сделать
base64 разные, хэш от него, соответственно тоже

Andrew
11.12.2016
19:53:39
в целом можно прогнать картинки фильтрами

чтобы несущественные нюансы сгладить

но, опять же, там не факт что получится прям 1 в 1

тут если такая задача стоит, то всякие гуглы это дело сетками распознают, типа сходство

Pavel
11.12.2016
19:55:02
ох, чото запахло СЛОЖНАСТЬЮ

Andrew
11.12.2016
19:55:27
дак да

учитывая что на каждый пиксель по 3 х 256 значения идет, а если пнг, то 4 х 256, там можно в широких пределах картинку менять, на глаз вообще видно не будет, тем не менее бинарно это будут разные картинки

Pavel
11.12.2016
19:58:36
ну вот да

делает меня грустить

Andrew
11.12.2016
20:01:17
ну в таких случаях нужно сознательно понижать детализацию

например можно кратно понизить разрешение, прогнать в грейскейл, или даже в индексированные цвета

Pavel
11.12.2016
20:02:12
хм, хорошая идея, спасибо

Дмитрий
11.12.2016
20:02:14
Нетривиальная задачка, да)

Google
Andrew
11.12.2016
20:02:21
и посчитать с получившейся картинки некий хэш

продумать формулу так, чтобы незначительные отличия в пару тонов не сильно сказывались на конечный результат

Дмитрий
11.12.2016
20:03:23
например можно кратно понизить разрешение, прогнать в грейскейл, или даже в индексированные цвета
Индексированные цвета будут промахиваться, grayscale проблемы тоже не решает. Поблочно сравнивать наверное

Междоус
11.12.2016
20:03:35
А есть же постгревый similarity, он позволяет сравнивать блобы.

Не знаю переносили его на 9.6 или нет, но на 9.5 работает

Дмитрий
11.12.2016
20:04:35
Разбить изображение на n x n небольших блоков, в каждом из них усреднить значение цвета, на выходе будет вектор, который уже вполне можно сравнивать

Andrew
11.12.2016
20:08:05
Разбить изображение на n x n небольших блоков, в каждом из них усреднить значение цвета, на выходе будет вектор, который уже вполне можно сравнивать
если предварительно кратно понизить разрешение, и проиндексировать цвета, то будет примерно то же :) только на порядок меньше телодвижений процом :)

Дмитрий
11.12.2016
20:08:18
Столько же

Возможно даже побольше

Admin
ERROR: S client not available

Дмитрий
11.12.2016
20:09:15
Хотя в принципе это и есть понижение разрешения, да)

Andrew
11.12.2016
20:09:51
тут суть в том, что небольшие различия усредняются при понижении разрешения

в т.ч. всякие там вотермарки

Дмитрий
11.12.2016
20:12:16
Зато не получится прервать после первого различия, в любом случае придётся считать весь лист

Andrew
11.12.2016
20:16:12
логично однако

об этом не подумал

Vitaliy
11.12.2016
20:16:54
по-моему, достаточно свести изображения к одинаковому разрешению, и посчитать попиксельно разницу по каждому цвету (и прозрачности), сложить модули разниц, вывести процент различия по пикселу, посчитать среднее арифметическое для всего массива пикселей. получится вероятность различия. установить допустимый порог

Google
Vitaliy
11.12.2016
20:18:42
временная сложность O(N) где N — количество пикселей

Pavel
11.12.2016
20:19:10
это да

Vitaliy
11.12.2016
20:19:30
Попиксельно не получится, артефакты сжатия
можем проверить. я не знаю ответа

хотя не, впадлу )

Andrew
11.12.2016
20:20:35
все таки я думаю надо усреднять группы 2х2 или 3х3 или NxN или даже NxM

так погрешность на всякие невидимые глазу артефакты будет размываться и пороги надо будет ставить ниже

Дмитрий
11.12.2016
20:20:57
Vitaliy
11.12.2016
20:21:18
кстати, про альфа-канал )))

Вредоносная версия картинки баннера имеет в своем составе зашифрованный скрипт, располагающийся в альфа-канале RGB изображения. Этот альфа-канал задает прозрачность каждого пикселя. Поскольку это изменение не сильно сказывается на внешнем виде картинки, она лишь незначительно отличается от ее оригинальной версии. https://m.habrahabr.ru/company/eset/blog/317092/

Pavel
11.12.2016
20:21:24
в общем как план сводить к 16×16 пикселей (условно) и считать различия цветов в пределах некой погрешности

Vitaliy
11.12.2016
20:22:34
Дмитрий
11.12.2016
20:22:47
вы ещё не забывайте, что картинки некратных разрешений будут очень нетривиально различаться после интерполяции, если сравнивать попиксельно

Vitaliy
11.12.2016
20:23:35
кажется, для этой проблемы лучше поискать готовое решение :)

а перед этим точно определиться с требованиями к решению: какие случаи должны распознаваться как одна и та же картинка

Andrew
11.12.2016
20:25:47
дак у чела по одному и тому же урлу я думаю одного и того же разрешения картинки прилетают

он говорит они на глаз не различимы

а хеши разные дают

там достаточно чтобы 1 байт не совпал, чтобы хэши разные получились

а челу надо определиться, это та же картинка или нет

Pavel
11.12.2016
20:28:12
Всё так

Страница 418 из 2748