powered by simpleCommunicator - 2.0.48     © 2025 Programmizd 02
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Длина QRCode
25 сообщений из 29, страница 1 из 2
Длина QRCode
    #40099140
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересно как много информации можно впихнуть в QRCode при сохранении возможностей
распознавания?

В вики https://en.wikipedia.org/wiki/QR_code#Standards пишут что V40 размером (177x177 пикс) со служебной
инфой и контрольными кодами может затянут в себя порядка 3килобайт.

Допустим я наплевал на стандарты. И просто беря во внимание возможность своей камеры телефона
передавать инфу чуть потолще чем URL-s. Ну допустим хотя-б 1000х1000 пикселов. Это грубо будет
1 мегапиксел черно белых или 1 000 000 / 8 = 125 000 K и с учотом служебной инфы в 25% как там в вики
пишут, выходит 93 000 байтов. Уже неплохо.

Время распознавания меня не волнует. Пускай хоть 5 минут работает.
Для алгоритма растеризации кода тоже по большему счету всё равно сколько там пикселов. Главное
чтоб алгоритм был тот-же.

Что думаете?
...
Рейтинг: 0 / 0
Длина QRCode
    #40099155
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Широко шагаете - штаны порвутся.

P.S.
Аргументация - тривиальна и вы сами её найдёте, если подумаете перед написанием сообщения.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099180
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На дешевых и средних телефонах камеры так себе, просто не будут читать слишком мелкий пиксель.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099192
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Значит 1000 - много? Но мне 177 - мало. Есть компромиссный вариант? Так чтоб штаны не рвались.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099225
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Печатайте Base64.
Лист A4 (64 символа в 64 строках) позволит закодировать несколько более 2,5КБ.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099251
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да это была самая первая идея. Шел от FideReader к QRCode scanner.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099260
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Значит 1000 - много? Но мне 177 - мало. Есть компромиссный вариант? Так чтоб штаны не рвались.

Надо из разрешения камер исходить. Например нынче бюджетно 5Мп - это 2592*1944, в твоем случае квадрат, значит 1944*1944, т.е. меньше 2-х физических пикселей на пиксель картинки, точно не прочитает.
Сколько надо минимум - черт его знает, думаю не меньше 4-х пикселей, т.е. максимум 1944 / 4 = 486, итого 23 Кб полезной инфы.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099275
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Несколько интересных наблюдений которые я понял в экспериментах.

QRCode не обязательно должен печатсться квадратиками. Я прогонял его
через фильтры гаусса (ФНЧ) и потом threashold по 50% и получал соседние пикселы
как-бы смазанные в овал или кляксу в зависимости от соседства. Но даже
в этом случае мобила уверенно распознавала ссылку.

В рекламных буклетах я часто находил этот дизайнерский прием.

Я повреждал пикселы. Инвертировал несколько штук. Мобила уверненно
распознавала.

Один фреймворк QRCodeGen различает 4 уровня коррекции.

Код: sql
1.
2.
3.
4.
5.
enum ErrorCorrectionLevel {
    L(1),
    M(0),
    Q(3),
    H(2);



Насколько я понял чем выше уровень коррекции ((H)igh) тем больше технической инфы в QR
коде но тем больше возможности по восстановлению.

В некоторых рекламах рекламщики как-бы издеваясь помещали в центр QRCode логотип своей
маркетинг акции и ... такая сломаная картинка тоже распознавалась.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099278
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот генерилка где можно поэкспериментировать.

https://www.the-qrcode-generator.com/
...
Рейтинг: 0 / 0
Длина QRCode
    #40099303
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Намедни у меня немного подзатерся уголок КюАр у скидочной карты. И всё - кассовые ридеры местами с 5го раза читали.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099309
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Фотоны шумят...

Тебе повезло еще. Могло и не распознаться.

P.S. А мог бы ножичком полоснуть.... (анкедот)
...
Рейтинг: 0 / 0
Длина QRCode
    #40099362
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если взять скрин моника (1920 х 1080) и самым мелким растрвоым шрифтом (5х5) напечатать текст.
То будет. С учотом межстрочного интервала в 1 px.

320x180 знакомест. Далее файл - печатаем в кодировке base64 (там полезная нагрузка 6/8 или три четверти)
итого получается 43200 или 42 килобайта полезной инфы.

Далее фоткаем мобилой и пытаемся распознать каким-нибудь FineReader или Tesseract. Здесь я не уверен
что FineReader осилит. У него слишком много кастомизаций на классический текст и base64 поток он может
воспринимать как ошибку. И знесь я не уверен как будет наведена резкость мобилы. Для моего Xiaomi 9 Pro
пишут следующую инфу по камерам 64 Мп + 8 Мп + 5 Мп+ 2 Мп. Знать бы что это такое. Разрешение каждой
камеры? А как тогда узнать какая камера была активна на съемке? Если перемножить исходник то получается
примерно 2 Мб. Но здесь старик Котельников неодобрительно ворчит. Надо бы хотя-бы в 2 раза выше чтоб
дискретность матрицы перекрывала оригинал. Тоесть камера в 5Мп - самое оно.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099365
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
где-то в интернетеXiaomi Redmi Note 9 Pro
....
Четыре модуля камеры

Модули камеры расположены квадратом на тыльной стороне смартфона. Основной модуль получил разрешение 64 Мп, ультраширик — 8 Мп, макромодуль — 5 Мп. Четвертым стал датчик глубины на 2 Мп.

Снимки с разрешением 64 Мп получаются за счет особой технологии Quad — фильтрация пикселей в модули по 4 пикселя...
...
Рейтинг: 0 / 0
Длина QRCode
    #40099366
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Правильно ли я понимаю что если я буду снимать на расстоянии примерно 20 см с экрана - то
буду с большой вероятностью использовать макро-камеру в 5мп?
...
Рейтинг: 0 / 0
Длина QRCode
    #40099378
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"самым лучшим из всех доказательств является опыт, если только он коренится в эксперименте" ( C ) википедия, Фрэнсис Бэкон
...
Рейтинг: 0 / 0
Длина QRCode
    #40099405
Swa111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Длина QRCode
    #40099416
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Если взять скрин моника (1920 х 1080) и самым мелким растрвоым шрифтом (5х5) напечатать текст.
То будет. С учотом межстрочного интервала в 1 px.

320x180 знакомест. Далее файл - печатаем в кодировке base64 (там полезная нагрузка 6/8 или три четверти)
итого получается 43200 или 42 килобайта полезной инфы.

Далее фоткаем мобилой и пытаемся распознать каким-нибудь FineReader или Tesseract. Здесь я не уверен
что FineReader осилит. У него слишком много кастомизаций на классический текст и base64 поток он может
воспринимать как ошибку. И знесь я не уверен как будет наведена резкость мобилы. Для моего Xiaomi 9 Pro
пишут следующую инфу по камерам 64 Мп + 8 Мп + 5 Мп+ 2 Мп. Знать бы что это такое. Разрешение каждой
камеры? А как тогда узнать какая камера была активна на съемке? Если перемножить исходник то получается
примерно 2 Мб. Но здесь старик Котельников неодобрительно ворчит. Надо бы хотя-бы в 2 раза выше чтоб
дискретность матрицы перекрывала оригинал. Тоесть камера в 5Мп - самое оно.

Во-первых если яркость не на максимуме, то будет видно мерцание экрана.
Во-вторых коды восстановления типа Кода Хэмминга это намного эффективнее чем распознавание текста 5м шрифтом с ограниченным набором букв, например найди там разницу между 8 и B.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099418
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо. Интересно.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099481
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Посмотрел это.

https://www.youtube.com/watch?v=L_qA-mUEGqQ


Здесь всё - во много раз хуже. Я имею в виду пересъёмку мобилой видео.
Современные видео-кодеки неспособны передавать отдельные пикселы.
В этом их суть. Поэтому надо заложить ... не знаю может 10 кратный запас
по разрешению и по частоте кадров.

Сама идея передчи анимированного QRCode или цветового кода наподобие Jabber - хороша.
Я тоже о ней думал. Но это будет 2 фаза моего investigation. И я хотел задействовать
видеокодк avi с высоким разрешением на весь скрин но без сжатия и с низким fts.
У меня уже был опыт создания презентаций (теч-демо алгоритма) где нужно было по
сути медленно переключать кадры как будто я в PowerPoint медленно кликаю next-next e.t.c.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099606
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Видео кодирует информацию по принципу косинусоидального преобразования, когда из преобразования Фурье отбрасываются высшие гармоники, а мннимая часть - вообще нафиг. А в дешифраторах это самая та штука (гармоники), нужна.
Топикстартеру для увеличения содержания можно попробовать раскрашивать нашлепку в разные цвета, а в случае особой продвинутости, ещё и поворачивать элементы на некоторый угол.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099607
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Современные видео-кодеки неспособны передавать отдельные пикселы.
кодеки бывают и со сжатием без потерь

В регистраторах для авиадиспетчерских в частности используются
...
Рейтинг: 0 / 0
Длина QRCode
    #40099609
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил,
Со сжатием и без потерь используется RLE, то есть zip. К сожалению видео они не сожмут. Даже фотку не сожмут. Попробуй.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099611
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AFAIK даже JPEG вполне может быть без потерь. Когда "высшие гармоники" округляются с точностью до последней более-менее значащей цифры )))

Кроме RLE существует еще дофига способов сжатия, в ряде случаев (черно белые изображения, факсы) дающих по размеру результат сопоставимый/лучший чем "обычный" JPEG.
...
Рейтинг: 0 / 0
Длина QRCode
    #40099613
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev
AFAIK даже JPEG вполне может быть без потерь. Когда "высшие гармоники" округляются с точностью до последней более-менее значащей цифры )))

JPEG2000 имеет режим без потерь
...
Рейтинг: 0 / 0
Длина QRCode
    #40099616
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev
AFAIK даже JPEG вполне может быть без потерь. Когда "высшие гармоники" округляются с точностью до последней более-менее значащей цифры )))

Кроме RLE существует еще дофига способов сжатия, в ряде случаев (черно белые изображения, факсы) дающих по размеру результат сопоставимый/лучший чем "обычный" JPEG.

Я проводил эксперименты с Photoshop еще в 2000х и тогда для моих тестовых картинок
JPEG всегда превносил разрушения даже когда я указывал quality = 100%. Тестовые картинки
содержали нечто похожее на настроечную таблицу. Тонкие линии. Горизонтальные. Вертикальные.
Сеточка шахмат. И цветовые контрастные переходы.

Кстати даже если-бы DCT вывести на точность близкую к оригиналу - там еще есть YUV subsampling
который в разных режимах просто прореживает цвет. Тоесть черно-белый канал 1:1 а цвето-разностные
с низким разрешением.
...
Рейтинг: 0 / 0
25 сообщений из 29, страница 1 из 2
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Длина QRCode
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]