Всё хорошо, но до конца тема не раскрыта. Что за генерирующая последовательность? Как она составляется? Откуда и как получены те таблицы для чисел B и D?
Лучший способ понять - карандаш и клетчатая бумага. Открываешь стандарт и начинаешь ручками рисовать. А потом перерисовывать. И ещё раз. И ещё. Пока код не станет читаться "простым" смартфоном :) P.S. А вообще ошибок в выпуске много. Начиная с рассказа о штрихкодах. Первые версии которого действительно были моноширными штрихами 0 и 1, но дальше и там были очень разные подходы, попытки и стандарты. Например логика позволяющая избежать длинных одноцветных плашек, вместо штриха. Инверсия бит. И прочее. До QR-кодирования большой путь в пару десятков промежуточных стандартов, который автор напрасно упустил. Они помогли бы понять как (а главное почему) мы дошли до жизни такой )))
Я 10 пишу на php, чуть меньше на js, и ещё меньше на python, но твои видео реально просвещают меня! Спасибо и респект за контент! Хотелось бы видео про ИИ, нейронки и машинное обучение)))
Алекс легенда !! Как же я рад что когда-то познакомился с этим каналом. Он имеем особенный вайб... И как раз первый видос был про теорию вероятности, я готовился к экзамену и твой видос лучше всего объяснил мне его )
Как я понял, это принятые стандартом байты для заполнения, а чередующиеся они потому что будут чередоваться до того момента пока длина не достигнет границы при выбранном уровне коррекции.
Так а что защищает qr код от повреждений? Что если часть будет скрыта или вырезана? Как работают qr коды у которых в центре какая то ерунда не относящаяся к коду. Как кодировать в него игры?
Защищают байты коррекции, по которым повреждённые участки можно восстановить, а игры, скорее всего, байтовым кодированием кодируются и сканнеры это всё расшифровывают
А будет видео, как разобрать QR-код? И не раскрыта тема иконок в центре QR-кода - она тупо ставится внутрь с надеждой на то, что алгоритмы коррекции и избыточная информация сделают свое дело?
Местами для распознавания куаров будто даже не алгоритмы используются, а нейронки которые хорошо умеют улавливать паттерны, и вспомогательные эвристические методы, которые подбирают самые вероятные варианты данных в таком коде. Во всяком случае встроенный в приложение камеры на риалми распознаватель умудрялся выдавать текст даже с узора на моем халате
@@Grynyaникакие "нейронки" не используются, система распознавания сделана особо чувствительной на абсолютно разные случаи(скан с экрана монитора в трёх метра от него, скан под углом с несфокусированной до конца камерой, в принципе плохое качество камеры и т. д.), потому что гораздо лучше увидеть qr там, где его не должно было быть, чем не видеть qr, который не идеально отображается
Да, иконка тупо ставится внутрь. По сути это намеренное повреждение кода, и он продолжает считываться только благодаря блоку для восстановления. Но если иконка превысит размеры этого блока, код будет невозможно восстановить.
А коды для платежных квитанций и чеков, коды в системе "Честный знак" и подобные формируются аналогичным принципом? У нас (на почте) для передачи информации об отправляемой и принимаемой почте формируются накладные с QR кодами, которые меняют свой размер в зависимости от количества отправляемой почты
@@АлександрШашев-ъ3ч Что? Я просто поделился с вами результатами эксперемента, что когда люди говорят, что было познавательно - они часто только думают, что чему-то научились, расчитывал на реакцию "Да? Прикольно." Или "А я реально всё понял, я гигачад", а вы сразу в сарказм или что это
Вот мои темы для следующих роликов: • Data Matrix и Aztec коды • Как работает Pegasus, и функция когда телефон может прослушивать даже в отключённом состоянии • Как устроены бэкдоры в чипах и микропроцессорах (Intel, AMD, Qualcomm и т.д)
Скорее всего, генератор таких штук специально максимально возможно "повреждает" код в виде изображения, чтобы его можно было прочитать, если идеально сосканировать. Но это не точно
Вставка иконки по сути повреждает код, но он продолжает считываться благодаря кодам коррекции. Если хочется вставить иконку, то для кода нужно выбрать самый высокий уровень коррекции. А потом вставляем иконку, стараясь не задеть служебные квадраты и полосу для синхронизации. Если не читается - значит иконка слишком большая и нужно уменьшить.
Привет, у тебя очень интересные ролики. Расскажи пожалуйста про домен, для чего он, историю создания и почему мы должны покупать их, а не можем их сами создавать. Расскажи пожалуйста.
Неплохо бы объяснять, почему, при создании цифро-буквенного кода, код первого символа в паре, надо умножать именно на 45. Думаю, не каждый сможет догадаться. А я лично, не понимаю, зачем инвертируются биты. Не все "ЗАЧЕМ ЭТО СДЕЛАНО" разъяснены. А вообще то - лайк)))
@@the_huge_knightИменно, её основание (45) соответствует числу символов, которые мы можем закодировать. Пусть исходный текст у нас разбит не на пары символов, как в видео, а на цепочки длины n. Суть здесь в том, чтобы думать о цепочке, как о числе, символы же, из которых она состоит - цифры. Тогда можем применить обобщенную формулу A[0]*b^0 + A[1]*b^1 + … + A[n-1]*b^(n-1), где A[i] - код i-ого символа/цифры в цепочке (считая справа), b - основание системы счисления (т.е. 45), ^ - возведение в степень. Для n = 4 получаем 'AlekOS' => ['Alek' | 'OS'] = [N1 | N2] • N1 = [код a]*45^3 + [код l]*45^2 + [код e]*45 + [код k] • N2 = [код o]*45 + [код s]
Пары кодов символов представляют из себя число в 45-ричной системе счисления. Умножая старший разряд на 45 и прибавляя младший, мы переводим число в понятную двоичную систему. Биты инвертируются, чтобы получить равномерное распределение чёрных и белых модулей по коду. Это дополнительно облегчает синхронизацию и считывание кода ридером. Инвертирование битов часто применяется в кодировании, чтобы избежать появления длинных последовательностей белого/чёрного или сигнала/тишины. ps: Спасибо, Ютуб, за лимит в пять комментариев в день. Так "удобно" вести обсуждение ещё никогда не было.
@@gimeron-db "Пары кодов символов представляют из себя число в 45-ричной системе счисления" А я подумал, всё от того, что алфавит QR-кода, по видимому, состоит из 44 символов. И преобразуя два символа (8+8бит)в одно число (от 0 до 2024)экономится 4 бита. Про длинные последовательности, в которых трудно синхронизировать начало битов, что то не подумал. Логично.
Больше половины информации в qr уходит на синхронизацию , адаптацию, коррекцию , и указание многочисленных версий. Тот случай когда обычный текст и буквы распознать проще чем код придуманный для простоты. ))
Интересно было бы узнать не про qr code а про DMC, они чаще встречаются и отличаются своей L формой, где L сплошные одинарные чёрные пиксели с одной стороны и с другой обратная L с чередующимися белыми-чёрными пикселями. Спасибо за видео.
Не понял Сказал про байтовое кодирование "в котором может использоваться только двоичный код" И подпись "FAF12121" ну, что-то такое Но в двоичном коде нет букв, это уже 16тиричный какой-то😮 А по времени это где-то в районе 6:25
Правила программирования на Assembler, вам в помощь, господа сомневающиеся в правильности и объеме изложенного. Учиться, учиться и учиться, - так завещал Человеку всемогущий Создатель вселенной (В.И.Ленин позаимствовал у Него эту заповедь).
слово bar имеет много значений, в том числе "строка" и "полоса", отсюда и название barcode, то есть дословно что-то типа "кодовая строка" или "кодовая полоска"
Вот где ты был неделю назад с этим видосом , я все прошлые выходные ебался с лабой по информатике с qr-кодом , если б не шаристые одногрупники то фиг бы сдал ее .
@@KitulousРасставить черное и белое в соответствии с байтами (усновно говоря) - это для вундеркиндов?... Это все запомнить и понять дело нескольких часов же
Телеграм-канал: t.me/Alek_OS
я..с-браузер прочитал этот текст. Хотя почему-то не всегда срабатывает.
Всё хорошо, но до конца тема не раскрыта. Что за генерирующая последовательность? Как она составляется? Откуда и как получены те таблицы для чисел B и D?
алгоритмы Рида-Соломона
Возможно зависимость Ридли?
кент 2 года создавал, я 2 года буду пытаться понять.
на половине перестал улавливать связь
У тебя 111 лайков
Почти всё понятно, кроме некоторых моментов..
Лучший способ понять - карандаш и клетчатая бумага. Открываешь стандарт и начинаешь ручками рисовать. А потом перерисовывать. И ещё раз. И ещё. Пока код не станет читаться "простым" смартфоном :)
P.S. А вообще ошибок в выпуске много. Начиная с рассказа о штрихкодах. Первые версии которого действительно были моноширными штрихами 0 и 1, но дальше и там были очень разные подходы, попытки и стандарты. Например логика позволяющая избежать длинных одноцветных плашек, вместо штриха. Инверсия бит. И прочее. До QR-кодирования большой путь в пару десятков промежуточных стандартов, который автор напрасно упустил. Они помогли бы понять как (а главное почему) мы дошли до жизни такой )))
А ещё полезно понять как работает фишка с рисунками в центре QR-кода. Тут только намёком дали понять, что у кода есть возможность делать ошибки.
@@hyppopotamm не ошибки а повреждения это разное
Благодаря повреждениям в qr коде может отсутствовать какаято его часть и он будет сканироваться
Было бы круто в описание кинуть ссылочку на расширенную спецификацию, для тех, кто хочет попробовать сделать сам.
Я спокойно делаю по этому ролику
Последние видосы просто невозможно понять… спасибо за труд Алек.
Значит недостаточно хороши видосы…. Много упускается для «облегчения» и чтоб видео не затягивать
Это вы не понимаете а я всё сразу понял только не запомнил
Не понимаешь, не смотрите
Чел хорош, статью с Хабра зачитал, я также проект сделал
Я 10 пишу на php, чуть меньше на js, и ещё меньше на python, но твои видео реально просвещают меня! Спасибо и респект за контент! Хотелось бы видео про ИИ, нейронки и машинное обучение)))
Зачем в звуковой дорожке сигнал 601 Гц?
Раздражает.
Я под Альтом сижу, в пульсе задавил)))
Ну реально
Не раздражает но всё таки
@@DART2WADER каво
Не нравится, не смотри
Алекс легенда !! Как же я рад что когда-то познакомился с этим каналом. Он имеем особенный вайб...
И как раз первый видос был про теорию вероятности, я готовился к экзамену и твой видос лучше всего объяснил мне его )
Отлично подготовился - даже название не осилил. Теория вероятностЕЙ.
@@РоманРомыч-з1ра тебе попался билет с фио препода и ты не сдал?
Спасибо за выпуск. Прям непривычно смотреть такой короткий ролик, обычно у вас ролики по 40 мин). А еще Гул на фоне немного отвлекает от повествования
Какой гул я его не слышу
8:58. Не очень понял про "чередующиеся байты", точнее откуда они взялись
Как я понял, это принятые стандартом байты для заполнения, а чередующиеся они потому что будут чередоваться до того момента пока длина не достигнет границы при выбранном уровне коррекции.
@@SergGin1 Не хватает под видео ссылки с таблицами на все этапы вычисления
@@p.al.trofimovзачем тебе под видео если есть в видео
В видео какое то гудение на фоне
тоже слышу
Гипноз )
Закодированная информация 😅
Кто расшифрует, сможет устроится на работу в отдел безопасности Алекса))
Майнинговые фермы они такие, громкие
@@ScientistLonerобработать же ваще никак, да! Сделаю, говорит, «на отвали» - пипл схавает.
Привет, огромное спасибо за твой труд! давай продолжение плейлиста по ассемблеру)
Будет видео про Крипту ? Мечтаю увидеть в твоем исполнении🙏
Так а что защищает qr код от повреждений? Что если часть будет скрыта или вырезана? Как работают qr коды у которых в центре какая то ерунда не относящаяся к коду. Как кодировать в него игры?
Защищают байты коррекции, по которым повреждённые участки можно восстановить, а игры, скорее всего, байтовым кодированием кодируются и сканнеры это всё расшифровывают
Представляю как работники предприятия жалуются что штрих-код их не устраивает и они хотят для себя другой))
Это в Японии, у нас такие бы, поехали лес валить в Сибирь.)
А будет видео, как разобрать QR-код? И не раскрыта тема иконок в центре QR-кода - она тупо ставится внутрь с надеждой на то, что алгоритмы коррекции и избыточная информация сделают свое дело?
Местами для распознавания куаров будто даже не алгоритмы используются, а нейронки которые хорошо умеют улавливать паттерны, и вспомогательные эвристические методы, которые подбирают самые вероятные варианты данных в таком коде. Во всяком случае встроенный в приложение камеры на риалми распознаватель умудрялся выдавать текст даже с узора на моем халате
вот мне тоже интересно чем и как потом всю эту байду считывать
Именно так, используемые алгоритмы позволяют потерять часть информации, скрытой за картинкой, и даже больше.
@@Grynyaникакие "нейронки" не используются, система распознавания сделана особо чувствительной на абсолютно разные случаи(скан с экрана монитора в трёх метра от него, скан под углом с несфокусированной до конца камерой, в принципе плохое качество камеры и т. д.), потому что гораздо лучше увидеть qr там, где его не должно было быть, чем не видеть qr, который не идеально отображается
Да, иконка тупо ставится внутрь. По сути это намеренное повреждение кода, и он продолжает считываться только благодаря блоку для восстановления. Но если иконка превысит размеры этого блока, код будет невозможно восстановить.
А коды для платежных квитанций и чеков, коды в системе "Честный знак" и подобные формируются аналогичным принципом? У нас (на почте) для передачи информации об отправляемой и принимаемой почте формируются накладные с QR кодами, которые меняют свой размер в зависимости от количества отправляемой почты
«Честный знак» использует DataMatrix (но вроде бы и QR допустим)
Да
Красава, отличный ролик, как всегда
Спасибо Вам за работу! Очень интересно и познавательно!
@@id-4 а что именно не так? Вы наверное настоящий профессор, а не актёр.
@@АлександрШашев-ъ3ч Что? Я просто поделился с вами результатами эксперемента, что когда люди говорят, что было познавательно - они часто только думают, что чему-то научились, расчитывал на реакцию "Да? Прикольно." Или "А я реально всё понял, я гигачад", а вы сразу в сарказм или что это
@@АлександрШашев-ъ3ч А где мой комментарий?
Я человек простой, вижу новый ролик Alek OS - ставлю лайк.
Спасибо что ты делаешь познавательный контент!
Вот мои темы для следующих роликов:
• Data Matrix и Aztec коды
• Как работает Pegasus, и функция когда телефон может прослушивать даже в отключённом состоянии
• Как устроены бэкдоры в чипах и микропроцессорах (Intel, AMD, Qualcomm и т.д)
очень интересно и правда это увидеть!
Как нарисовать своё изображение из точек на qr коде? То есть самому выбрать какие пиксели будут чёрными, какие белыми?
Скорее всего, генератор таких штук специально максимально возможно "повреждает" код в виде изображения, чтобы его можно было прочитать, если идеально сосканировать. Но это не точно
Вставка иконки по сути повреждает код, но он продолжает считываться благодаря кодам коррекции.
Если хочется вставить иконку, то для кода нужно выбрать самый высокий уровень коррекции. А потом вставляем иконку, стараясь не задеть служебные квадраты и полосу для синхронизации.
Если не читается - значит иконка слишком большая и нужно уменьшить.
Отлично! Надо полагать следующее видео о графических кодах будет про Датаматрикс? 🤔
Вааааау, это великолепно
Привет, спасибо за видео. На 09:02 откуда именно появились эти 2 байта 236 и 17? Обьясни пож-та подробнее
Спасибо за видео, очень интересно)
Привет, у тебя очень интересные ролики. Расскажи пожалуйста про домен, для чего он, историю создания и почему мы должны покупать их, а не можем их сами создавать. Расскажи пожалуйста.
Это есть в ролике как устроен интернет
Высшая математика для меня, а с математикой у меня было плохо. 😭
Как вы получили данные в десятичной системе? 8:56
Неплохо бы объяснять, почему, при создании цифро-буквенного кода, код первого символа в паре, надо умножать именно на 45. Думаю, не каждый сможет догадаться. А я лично, не понимаю, зачем инвертируются биты. Не все "ЗАЧЕМ ЭТО СДЕЛАНО" разъяснены. А вообще то - лайк)))
Собственная система счисления 😱😱😱
@@the_huge_knightИменно, её основание (45) соответствует числу символов, которые мы можем закодировать.
Пусть исходный текст у нас разбит не на пары символов, как в видео, а на цепочки длины n. Суть здесь в том, чтобы думать о цепочке, как о числе, символы же, из которых она состоит - цифры. Тогда можем применить обобщенную формулу A[0]*b^0 + A[1]*b^1 + … + A[n-1]*b^(n-1), где A[i] - код i-ого символа/цифры в цепочке (считая справа), b - основание системы счисления (т.е. 45), ^ - возведение в степень.
Для n = 4 получаем
'AlekOS' => ['Alek' | 'OS'] = [N1 | N2]
• N1 = [код a]*45^3 + [код l]*45^2 + [код e]*45 + [код k]
• N2 = [код o]*45 + [код s]
Не, с 45 всё очевидно (44 символа), есть много другого непонятного
Пары кодов символов представляют из себя число в 45-ричной системе счисления. Умножая старший разряд на 45 и прибавляя младший, мы переводим число в понятную двоичную систему.
Биты инвертируются, чтобы получить равномерное распределение чёрных и белых модулей по коду. Это дополнительно облегчает синхронизацию и считывание кода ридером.
Инвертирование битов часто применяется в кодировании, чтобы избежать появления длинных последовательностей белого/чёрного или сигнала/тишины.
ps: Спасибо, Ютуб, за лимит в пять комментариев в день. Так "удобно" вести обсуждение ещё никогда не было.
@@gimeron-db "Пары кодов символов представляют из себя число в 45-ричной системе счисления" А я подумал, всё от того, что алфавит QR-кода, по видимому, состоит из 44 символов. И преобразуя два символа (8+8бит)в одно число (от 0 до 2024)экономится 4 бита. Про длинные последовательности, в которых трудно синхронизировать начало битов, что то не подумал. Логично.
Больше половины информации в qr уходит на синхронизацию , адаптацию, коррекцию , и указание многочисленных версий. Тот случай когда обычный текст и буквы распознать проще чем код придуманный для простоты. ))
Не, байты коррекции много кушают, но если выбирать L или M, то больше половины обйома это данные. А на версии 40 даже с H данных целая треть
9:27 я больше не могу смотреть этот ролик, начиналось интересно, потом пошел понос, я ваще нихера не понимал зачем я это смотрю😂
Опопсел.
Ассемблер это неисчерпаемая тема,но он похоже себя исчерпал раньше😂
Супер!!! Годный контент.
Интересно было бы узнать не про qr code а про DMC, они чаще встречаются и отличаются своей L формой, где L сплошные одинарные чёрные пиксели с одной стороны и с другой обратная L с чередующимися белыми-чёрными пикселями. Спасибо за видео.
Про алгоритм сжатия конечно интересно, но qr это совсем другая тема, о которой тоже интересно узнать
6:18
Я думаю нам стоит раличать байтовое и шестнадцатиричное представление. Потому что на экране именно шестадцатиричное
Чет сложновато, легче понимал тему с рекурсией и кэшом... (Надо поспать и снова посмотреть)
зачем 3 черных квадрата? можно же поместить один в верхний левый угол
Во дела, ну спасибо, сложно и как ты в этом разобрался вообще!
надлежащая литература должно быть помогла
1:22 их бесило что штрихкод был медленным??????? автор ты серьезно?
Я вроде программист, но ничо не понял 😅
Я поняла
Обожаю тебя хотелось бы видео про компьютерное зрение
Что за полосы синхронизации?
Это как квадраты выравнивания, только полосы (пунктир)
@@id-4 типо если qr код косой то можно будет по полосам понять что за линия?
Скорость /2 => легко уснуть. Пользуйтесь.
Спасибо за контент, но до сегодняшнего я не дорос!
спасибо, ничего не понял
О, давольно интересно
Легенда !
Ещё бы хотелось увидеть код, как это устроено
братишь, когда видео по нейронкам?
у топлеса было видео по нейросетям
@@ATMNNk Этого мало 😢
@@ATMNNkу него не оч видео
@@ATMNNk топлес не расскажет про то как они устроены с технической точки зрения, он общую информацию дал
@@kixt_043у него научпоп, а этот канал более подробно рассказывает как раз о мелочах и без вау эффектов. прямо и по делу
Возмутительно. Ни одного упоминания про Рида и Соломона!
А зачем инвертировать часть qr кода а потом ещё и записывать маску инвертирования туда же?
Перепроверка уровня коррекции при расшифровке, наверное
ничего не понятно, но очень интересно 😅
Не понял
Сказал про байтовое кодирование "в котором может использоваться только двоичный код"
И подпись "FAF12121" ну, что-то такое
Но в двоичном коде нет букв, это уже 16тиричный какой-то😮
А по времени это где-то в районе 6:25
111 в двоичной системе это 000110100001101000011010 или я что-то путаю?
Почему в видео это 0001101111?
Нихера не понял 😂😂😂
🤝🏼
Но очень интересно
QR-коды 40 версии должны быть размером 181, т. к. 21+40*4=181
учти, что 1я версия 21, а 40ая это будет 21+39*4=177
потому что 2я это 21+2*1, 3я это 21+2*2 и тд
Чтото звук в видео на фоне гудит. Как брутто у меня что-то сломалось дома (
Надо было вместо текущего qr кода вставить ссылку на рикролл
Правила программирования на Assembler, вам в помощь, господа сомневающиеся в правильности и объеме изложенного.
Учиться, учиться и учиться, - так завещал Человеку всемогущий Создатель вселенной (В.И.Ленин позаимствовал у Него эту заповедь).
Нет, МАЛА )
Спасибо
ЯсноПонятно!!!...
Пипец как "огуречные" квадратики замороченные. )))
я тут его в куб разложил так массив данных стал х6 круто? а потом можно внутри куба обозначить данные. а это еще х6 на каждый слой...
Тогда уж трёхмерный массив, данные в квадрат возводятся (для версии 40L это пол Гб)
@@id-4 а норм так получается. если еще и поряд считывания информации наладить то можно увеличить до 3х гигов
@@id-4 потом только успевай разорхивироать
Не до конца понимаю сказанное и гугл слишком много объяснял вместо тебя но принцип понятен
сразу же вопрос... почему штрих код, это бар код?
Назвали так
слово bar имеет много значений, в том числе "строка" и "полоса", отсюда и название barcode, то есть дословно что-то типа "кодовая строка" или "кодовая полоска"
Ну хорошо Алек.
шум на фоне :(
У тебя в видео что-то гудит на фоне.
Жрать всем хочется 😂
Why did you ban me?
Потому
Хэ -- эффективность расходования пространства.
Немного душнавато и не понятно в некоторых моментах, а так в целом нормально
В кокой то момент понимаешь что тебе все эти техники нафиг не нужны потому что они пииздец сложны
Опа ничоси тут видео
Мой моцк расплавился 🫠
Не твое значит
бесит пришел посмотреть рекламные вставки а между ними какаета ху+та про кюар байтысы из кфси коды алло
Три 666 там скрываются сейчас
Вот где ты был неделю назад с этим видосом , я все прошлые выходные ебался с лабой по информатике с qr-кодом , если б не шаристые одногрупники то фиг бы сдал ее .
офигеть, че за информатика такая, для вундеркиндов что ли?
@@Kitulous на первом курсе универа
@@KitulousРасставить черное и белое в соответствии с байтами (усновно говоря) - это для вундеркиндов?... Это все запомнить и понять дело нескольких часов же
генератор qr-кодов, не слышал?
хихихи многочлен
запили видео про Линукс
@user-yy4ct9we7f Это некультурно
Пожалуй подписываться не стану очень муторно не информативно
Ok, you banned me, unsub.
Вам необходимо преподавать.!!!