СПОСОБЫ И ВЫЧИСЛИТЕЛЬНОЕ УСТРОЙСТВО ДЛЯ ОПРЕДЕЛЕНИЯ, ЯВЛЯЕТСЯ ЛИ ЗНАК ПОДЛИННЫМ
METHODS AND COMPUTING DEVICE FOR DETERMINING IF A SIGN IS AUTHENTIC

ПЕРЕКРЕСТНАЯ ССЫЛКА НА РОДСТВЕННЫЕ ЗАЯВКИ
[0001] По настоящей заявке испрашивается приоритет предварительной заявки на патент США 62/180477, поданной 16 июня 2015 г., которая во всей своей полноте включена в настоящее описание по ссылке.
ОБЛАСТЬ ИЗОБРЕТЕНИЯ
[0002] Настоящее раскрытие, в целом, относится к технологии защиты от подделок и, в частности, к способам и вычислительному устройству для определения того, является ли знак подлинным.
ПРЕДПОСЫЛКИ ИЗОБРЕТЕНИЯ
[0003] Контрафактные продукты, к сожалению, являются широко доступными и их часто трудно обнаружить. Когда контафакторы изготавливают поддельные товары, они, как правило, копируют этикетки и штрихкоды в дополнение к фактическим продуктам. На внешнем уровне этикетки и штрихкоды могут казаться подлинными и даже дают достоверные данные при сканировании (например, декодируются в соответствии с Универсальным Кодом Продукта). Несмотря на то, что в настоящее время доступно много технологий для противодействия такому копированию, большая часть таких решений включает введение различных типов кодов, узоров, микро волокон, микро точек и других литер, чтобы помешать контрафакции. Такие методики, требуют от изготовителей использования дополнительного оборудования и материалов и добавляют уровень сложности в процесс производства.
ЧЕРТЕЖИ
[0004] Несмотря на то, что прилагаемая формула изобретения конкретно излагает признаки таких методик, эти методики вместе с их задачами и преимуществами могут быть лучше поняты из нижеследующего подробного описания, взятого совместно с сопроводительными чертежами, на которых:
[0005] Фиг. 1 является примером системы, в которой могут быть реализованы различные варианты осуществления раскрытия;
[0006] Фиг. 2 является другим примером системы, в которой могут быть реализованы различные варианты осуществления раскрытия;
[0007] Фиг. 3 показывает архитектуру вычислительного устройства в соответствии с вариантом осуществления;
[0008] Фиг. 4 показывает пример знака в соответствии с вариантом осуществления;
[0009] Фиг. 5 является блок-схемой процесса, выполняемого одним или более вычислительных устройств в соответствии с вариантом осуществления;
[0010] Фиг. 6 является блок-схемой процесса, выполняемого одним или более вычислительных устройств в соответствии с другим вариантом осуществления;
[0011] Фиг. 7A и Фиг. 7B показывают пример того, каким образом вычислительное устройство вычисляет проецируемые средние значения пикселя в соответствии с вариантом осуществления;
[0012] Фиг. 8 показывает пример знака в соответствии с другим вариантом осуществления;
[0013] Фиг. 9A и Фиг. 9B показывают другой пример того, каким образом вычислительное устройство вычисляет проецируемые средние значения пикселя в соответствии с вариантом осуществления;
[0014] Фиг. 10 показывает пример графика профиля края в соответствии с вариантом осуществления;
[0015] Фиг. 11 показывает пример профиля края с Фиг. 10 после того, как вычислительное устройство применило полосовой фильтр в соответствии с вариантом осуществления; и
[0016] Фиг. 12 и Фиг. 13 показывают примеры профилей корреляции спектра пространственных частот в соответствии с различными вариантами осуществления.
ОПИСАНИЕ
[0017] Настоящее раскрытие, в целом, направлено на способы и вычислительное устройство для определения того, является ли знак подлинным. В соответствии с различными вариантами осуществления вычислительное устройство (или его логическая схема) принимает (например, через камеру или через сеть связи) изображение знака-кандидата (например, одномерный или двумерный штрихкод), использует изображение для проведения измерений (например, линейности, цвета или отклонения от оптимально подогнанной сетки) характеристики признака (края, ячейки, штриха, подзоны, пустой зоны или искажения) знака-кандидата, что дает в результате профиль для того признака. Вычислительное устройство отфильтровывает из профиля признака все компоненты пространственных частот за исключением первой полосы компонентов пространственных частот (например, посредством применения полосового фильтра), что дает в результате первый отфильтрованный профиль для признака. Вычислительное устройство повторяет данный процесс фильтрации для второй полосы компонентов пространственных частот (например, посредством применения второго полосового фильтра к исходному профилю признака), что дает в результате второй отфильтрованный профиль для признака. Вычислительное устройство может повторять данный процесс фильтрации для дополнительных полос пространственных частот. Вычислительное устройство сравнивает первый отфильтрованный профиль знака-кандидата с эквивалентным первым отфильтрованным профилем подлинного знака (например, отфильтрованным профилем, который вычислительное устройство получило от применения того же самого полосового фильтра к измерениям той же самой характеристики того же самого признака в подлинном знаке). Вычислительное устройство также сравнивает второй отфильтрованный профиль знака-кандидата с эквивалентным вторым отфильтрованным профилем подлинного знака. Вычислительное устройство определяет, является ли знак-кандидат подлинным (например, является ли знак-кандидат, фактически, подлинным знаком). Вычислительное устройство также может использовать эти сравнения, чтобы определять, был ли знак-кандидат напечатан с той же самой печатной формы, что и подлинный знак (например, чтобы идентифицировать знак, который был напечатан, используя украденную печатную форму).
[0018] В варианте осуществления признаком, который измеряет вычислительное устройство, является край знака, а характеристикой края, которую измеряет вычислительное устройство, является его проецируемые средние значения пикселя. Например, вычислительное устройство может определять проецируемые средние значения пикселя на участке знака-кандидата, который включает в себя край (например, вдоль одного или более краев штрихкода), что дает в результате профиль для края. Вычислительное устройство отфильтровывает из профиля края все компоненты пространственных частот за исключением первой полосы компонентов пространственных частот (например, посредством применения полосового фильтра), что дает в результате первый отфильтрованный профиль для края. Вычислительное устройство повторяет данный процесс фильтрации для второй полосы компонентов пространственных частот (например, посредством применения второго полосового фильтра к исходному профилю края), что дает в результате второй отфильтрованный профиль для края, и может повторять данный процесс фильтрации для дополнительных полос пространственных частот. Вычислительное устройство сравнивает первый отфильтрованный профиль знака-кандидата с эквивалентным первым отфильтрованным профилем подлинного знака (например, отфильтрованным профилем, который вычислительное устройство получило от применения такого же самого полосового фильтра к первому профилю того же самого края подлинного знака). Вычислительное устройство также сравнивает второй отфильтрованный профиль знака-кандидата с эквивалентным вторым отфильтрованным профилем подлинного знака. Вычислительное устройство определяет, является ли знак-кандидат подлинным на основании этих сравнений.
[0019] В варианте осуществления для каждого сравнения, которое вычислительное устройство делает между отфильтрованным профилем знака-кандидата и отфильтрованным профилем подлинного знака, вычислительное устройство назначает показатель корреляции. Посредством построения карты полосовых фильтров, примененных к профилям признака (знака-кандидата и подлинного знака) по показателям корреляции (например, составляя график каждого показателя корреляции как функции полосового фильтра, который был применен, чтобы создать сравниваемые отфильтрованные профили), вычислительное устройство создает профиль корреляции спектра пространственных частот. Вычислительное устройство определяет, является ли знак-кандидат подлинным на основании его анализа профиля корреляции спектра пространственных частот.
[0020] В соответствии с различными вариантами осуществления вычислительное устройство анализирует только подучасток профиля корреляции спектра пространственных частот для того, чтобы идентифицировать происхождение знака-кандидата. Например, вычислительное устройство может фокусироваться на самых нижних (например, нижних четырех) полосах профиля корреляции спектра пространственных частот для того, чтобы определять, является ли знак-кандидат фотокопией подлинного знака.
[0021] Данное раскрытие часто будет ссылаться на «знак». Используемый в данном документе «знак» является видимым индикатором, который умышленно помещен на физический объект. Знак может быть чем-то, что идентифицирует торговую марку (например, логотип), чем-то что несет информацию, как например, штрихкод (например, двумерный («2D») штрихкод, как указано в стандарте Международной Организации по Стандартизации («ISO») и Международной Электротехнической Комиссии («IEC») ISO/IEC 16022), срок годности или информация отслеживания, такая как серийный номер), или художественным оформлением. Знак является видимым в некотором участке электромагнитного спектра, хотя и не обязательно невооруженным глазом. «Признак» знака является чем-то на знаке, что является видимым (либо вооруженным, либо невооруженным глазом). «Характеристика» признака является некоторым измеримым аспектом признака, таким как его линейность, цвет или отклонение от оптимально подогнанной сетки.
[0022] «Профиль» является набором измерений одной или более характеристик признака. В различных вариантах осуществления одно или более вычислительных устройств, описанных в данном документе, могут использовать один или более профилей, чтобы определять, является или нет знак подлинным. Следующее является неисчерпывающим списком типов профилей: профиль края, профиль ячейки, профиль подзоны и профиль искажения.
[0023] Понятие «искажение», используемое в данном документе, является признаком знака, который был создан машиной или процессом, который создал знак, но не в соответствии с замыслом или намерением (т.е., иррегулярность). Искажение может иметь характеристики, которые могут быть измерены. Примеры искажений и их характеристик, которые могут быть измерены, включают в себя: (a) отклонение среднего цвета подзоны (например, ячейки 2D штрихкода) от среднего, полученного из знака (которое может быть средним для соседних ячеек того же самого номинального цвета), (b) наклон в позиции подзоны относительно оптимально подогнанной сетки соседних подзон, (c) зоны отличающегося одного из по меньшей мере двух цветов от номинального цвета ячеек, (d) отклонение от номинальной формы непрерывного края внутри знака, и (e) дефекты или другие вариации, полученные в результате печати знака, такие как посторонние знаки или пустоты. В некоторых вариантах осуществления искажение является неконтролируемо воспроизводимым.
[0024] Понятие «логическая схема», используемое в данном документе, означает схему (тип электронного аппаратного обеспечения), разработанную для выполнения комплексных функций, определенных в понятиях математической логики. Примеры логической схемы включают в себя микропроцессор, контроллер или проблемно-ориентированную интегральную микросхему. Когда настоящее раскрытие относится к вычислительному устройству, выполняющему действие, следует понимать, что это также может означать, что логическая схема, интегрированная с вычислительным устройством, фактически, выполняет действие.
[0025] Понятие «устройство мобильной связи», используемое в данном документе, является устройством связи, которое выполнено с возможностью отправки и приема информации через беспроводную сеть, такую как сотовая сеть или сеть WiFi. Примеры устройства мобильной связи включают в себя сотовые телефоны (например, смартфоны), планшетные компьютеры и портативные сканеры с функциональной возможностью беспроводной связи.
[0026] Понятие «пространственная частота», используемое в данном документе, относится к периодичности вариации цвета пикселя (например, цвета в оттенках серого) по расстоянию. Единицами пространственной частоты являются пиксели из расчета на единицу линейного расстояния. Для удобства, пространственная частота также может быть выражена в данном документе в понятиях длины волны (например, расстояние между смежными пиками в вариации оттенка серого пикселя). Например, применение полосового фильтра, чтобы пропускать только компоненты, чьи длины волн находятся между 0.3 миллиметрами и 3 миллиметрами, эквивалентно применению полосового фильтра, чтобы пропускать только компоненты, чьи пространственные частоты находятся между 3.33 пикселей на миллиметр и 0.33 пикселей на миллиметр. Таким образом, когда в данном документе используется понятие «полоса пространственных частот», оно может включать в себя диапазон пространственных длин волн.
[0027] На Фиг. 1 наносящее знак устройство 100 наносит подлинный знак 102 («знак 102») на легальный физический объект 104 («объект 104»). В некоторых вариантах осуществления объект 104 является изделием, таким как предмет одежды, сумка или модный аксессуар. В других вариантах осуществления объект 104 является этикеткой, такой как этикетка штрихкода или упаковка для некоторого другого физического объекта. Знак 102 может быть чем-то, что идентифицирует торговую марку (например, логотип), чем-то, что несет информацию (например, штрихкод), или художественным оформлением. Возможные варианты осуществления наносящего знак устройства 100 включают в себя печатающее устройство (например, лазерное или термографическое печатающее устройство), устройство травления, гравировальное устройство, наносящее теснение устройство, выжигающее устройство, наносящее вышивку устройство и устройство термопереноса. Наносящее знак устройство 100 наносит знак 102 посредством, например, печати, травления, гравировки, теснения, прожига, вышивки или термопереноса знака 102 на объект 104. Знак 102 включает в себя одно или более искажений. В некоторых вариантах осуществления знак 102 также включает в себя намеренно созданные антиконтрафактные признаки, такие как микроскопические узоры.
[0028] Первое устройство 106 захвата изображения (например, камера, устройство машинного зрения или сканер) захватывает изображение знака 102 после того, как знак 102 наносится. Осуществляется управление обстоятельствами, при которых первое устройство 106 захвата изображения захватывает изображение знака 102, так что существует обоснованная уверенность в том, что изображение является, фактически, тем, что и у подлинного знака 102. Например, интервал времени между тем, как наносящее знак устройство 100 наносит знак и первое устройство 106 захвата изображения получает изображение знака 102, может быть небольшим, и первое устройство 106 захвата изображения может физически располагаться рядом с наносящим знак устройством 100 по упаковочной линии. Таким образом, когда используется понятие «подлинный знак», оно относится к знаку, который был нанесен наносящим знак устройством на легальном источнике (т.е. не скопирован нелегально или тайно).
[0029] Первое устройство 106 захвата изображения передает захваченное изображение первому вычислительному устройству 108. Возможные варианты осуществления первого вычислительного устройства 108 включают в себя настольный компьютер, сервер в стоечном исполнении, компьютер класса лэптоп, планшетный компьютер и устройство мобильной связи. В некоторых вариантах осуществления первое устройство 106 захвата изображения интегрировано с первым вычислительным устройством 108, и в этом случае первое устройство 106 захвата изображения передает захваченное изображение логической схеме первого вычислительного устройства 108. Первое вычислительное устройство 108 или логическая схема в нем принимает захваченное изображение и передает захваченное изображение второму вычислительному устройству 110. Возможные варианты реализации второго вычислительного устройства 110 включают в себя все те устройства, что перечислены в отношении первого вычислительного устройства 108.
[0030] После приема захваченного изображения второе вычислительное устройство 110 генерирует один или более отфильтрованных профилей одного или более признаков подлинного знака 102. Действия, которые второе вычислительное устройство может выполнять при выполнении данной задачи в варианте осуществления, являются теми, что приведены на Фиг. 5, которая будет описана более подробно ниже. Второе вычислительное устройство 110 сохраняет отфильтрованные профили в устройстве 112 хранения мультимедиа.
[0031] Продолжая с Фиг. 1, непроверенный физический объект 114 («непроверенный объект 114»), который может быть или может не быть легальным физическим объектом 104, должен быть протестирован, чтобы убедиться в том, что он не является контрафактом или нелегальным иным образом. Возможными вариантами осуществления непроверенного объекта 114 являются точно такие же, как таковые у легального физического объекта 104. На непроверенном объекте 114 находится знак-кандидат 116. Возможными вариантами осуществления знака-кандидата 116 являются точно такие же, как таковые у подлинного знака 102. Второе устройство 118 захвата изображения (например, камера, устройство машинного зрения, или сканер) захватывает изображение знака-кандидата 116 и передает изображение третьему вычислительному устройству 120. Как с первым устройством 106 захвата изображения и первым вычислительным устройством 108 второе устройство 118 захвата изображения может быть частью третьего вычислительного устройства 120, а передача захваченного изображения знака-кандидата 116 может быть внутренней (т.е., от второго устройства 118 захвата изображения к логической схеме третьего вычислительного устройства 120). Третье вычислительное устройство 120 (или логическая схема в нем) принимает захваченное изображение и передает захваченное изображение второму вычислительному устройству 100.
[0032] После приема захваченного изображения второе вычислительное устройство 110 генерирует один или более отфильтрованных профилей одного или более признаков знака-кандидата 116. Действия, которые второе вычислительное устройство может выполнять при выполнении данной задачи в варианте осуществления, являются теми, что приведены на Фиг. 6, которая будет описана более подробно ниже.
[0033] Со ссылкой на Фиг. 2 описан пример системы, которая может быть использована в другом варианте осуществления. На упаковочном предприятии 200 располагаются печатающее этикетки устройство 202, наносящее этикетки устройство 204, упаковочная линия 206, устройство 208 захвата изображения и первое вычислительное устройство 210. Печатающее этикетки устройство 202 наносит подлинные знаки, включая подлинный знак 212 («знак 212»), на некоторое число этикеток, которые переносятся на рулон 214 этикеток. Возможные варианты осуществления подлинного знака включают в себя одномерный («1D») штрихкод и 2D штрихкод. Наносящее этикетки устройство 204 наносит этикетки (включая отдельно показанные этикетки 216 и 218 на Фиг. 2) на легальные физические объекты, два из которых показаны на Фиг. 2 с ссылочными обозначениями 220 и 222 («первый объект 220» и «второй объект 222»). Фиг. 2 показывает физические объекты как коробки (например, коробки, содержащие промышленные изделия), но объекты не обязательно должны быть коробками или контейнерами. Возможные варианты осуществления легальных физических объектов включают в себя те, что перечислены ранее применительно к объекту 104 на Фиг. 1.
[0034] Устройство 208 захвата изображения захватывает изображение знака 212 и передает захваченное изображение первому вычислительному устройству 210. Первое вычислительное устройство 210 принимает захваченное изображение и передает захваченное изображение второму вычислительному устройству 224 через сеть 226 связи («сеть 226»). Возможные варианты осуществления сети 226 включают в себя локальную сеть, глобальную сеть, открытую сеть, частную сеть и Интернет. Сеть 226 может быть проводной, беспроводной или их сочетанием.
[0035] После приема захваченного изображения второе вычислительное устройство 224 генерирует один или более отфильтрованных профилей одного или более признаков подлинного знака 212. Действия, которые второе вычислительное устройство 224 может выполнять при выполнении данной задачи в варианте осуществления, являются теми, что приведены на Фиг. 5, которая будет описана более подробно ниже. Второе вычислительное устройство 224 сохраняет отфильтрованные профили на устройстве 228 хранения мультимедиа.
[0036] Продолжая с Фиг. 2, в некоторый момент в цепочке распределения из упаковочного предприятия 200 к точке распределения (например, точке продаж) пользователь 230 (например, продавец или сотрудник правоохранительных органов) берет непроверенный физический объект 232 («непроверенный объект 232»), который имеет непроверенную этикетку 234, которая несет знак-кандидат 236. Литеры на непроверенном объекте 232 или информация, закодированная в знаке-кандидате 236, могут предполагать, что непроверенный объект 232 происходит из легального источника, такого как упаковочное предприятие 200 (или компания, для которой упаковочное предприятие 200 обрабатывает исходные объекты на упаковочной линии 206). В данном сценарии пользователь 230 желает определить, является ли непроверенный объект 232 контрафактом или по иному нелегальным.
[0037] Пользователь 230 запускает приложение на третьем вычислительном устройстве 238, которое на Фиг. 2 изображено в качестве смартфона. Третье вычислительное устройство 238 под управлением приложения (и возможно в ответ на дополнительный ввод от пользователя 230), захватывает изображение знака-кандидата 236 (например, используя камеру 314, изображенную на Фиг. 3). Третье вычислительное устройство 238 декодирует явные данные в знаке-кандидате 236 (например, данные в штрихкоде, которые указывают идентификационные данные продукта, на который наносится штрихкод) и передает захваченное изображение второму вычислительному устройству 224 через сеть 226.
[0038] После приема захваченного изображения второе вычислительное устройство 224 генерирует один или более отфильтрованных профилей одного или более признаков знака-кандидата 236. Действия, которые второе вычислительное устройство 224 может выполнять при выполнении данной задачи в варианте осуществления, являются теми, что приведены на Фиг. 6, которая будет описана более подробно ниже.
[0039] В варианте осуществления одно или более вычислительных устройств 108, 110 и 120 с Фиг. 1 и одно или более вычислительных устройств 210, 224 и 238 с Фиг. 2 имеют общую архитектуру, показанную на Фиг. 3. Устройство, изображенное на Фиг. 3, включает в себя логическую схему 302, первичную память 304 (например, энергозависимую память, память с произвольным доступом), вторичную память 306 (например, энергонезависимую память), устройства 308 ввода пользователя (например, клавиатуру, мышь, или сенсорный экран), дисплей 310 (например, дисплей на органических, светоизлучающих диодах) и сетевой интерфейс 312 (который может быть проводным или беспроводным). Памяти 304 и 306 хранят инструкции и данные. Логическая схема 302 исполняет инструкции и использует данные, чтобы выполнять различные процедуры, включающие в некоторых вариантах осуществления способы, описываемые в данном документе (включая, например, те процедуры, которые упоминаются как выполняемые вычислительным устройством). Некоторые из вычислительных устройств также могут включать в себя камеру 314 (например, третье вычислительное устройство 238, в частности, если оно реализуется в качестве устройства мобильной связи).
[0040] В варианте осуществления подлинный знак (такой как подлинный знак 212 на Фиг. 2) состоит из некоторого числа признаков, именуемых в данном документе «подзонами». Подзоны могут соответствовать «ячейкам» в соответствии с ISO/IEC 15415 и могут быть выполнены единообразного размера. Чтобы способствовать иллюстрации некоторых из концепций, обсуждаемых в данном документе, внимание направлено на Фиг. 4, которая иллюстрирует знак 400 с первой подзоной 450, второй подзоной 452, третьей подзоной 454 и четвертой подзоной 456. Характеристикой первой подзоны 450 является ее средняя пигментация, которую вычислительное устройство может измерить и определить значительное отклонение (например, в той степени, которая превышает предварительно определенную пороговую величину) от таковой у других подзон. Характеристикой второй подзоны 452 является ее смещение от оптимально подогнанной сетки 458. Вычислительное устройство может измерить данное отклонение и определить величину отклонения как значительно более высокое, чем у других подзон. Характеристикой третьей подзоны 454 является частота возникновения пустот. Вычислительное устройство может измерить частоту возникновения пустот и определить, что третья подзона 454 включает в себя значительно более высокую частоту возникновения пустот, чем другие подзоны. В заключение, признаком, который может быть обнаружен в четвертой подзоне 456, является край 460. Характеристикой края 460 является его линейность. Вычислительное устройство может измерить данную линейность и определить, что линейность является значительно ниже чем, у краев других подзон.
[0041] Со ссылкой на Фиг. 5 описан пример процедуры, которую второе вычислительное устройство 110 или второе вычислительное устройство 224 выполняет в варианте осуществления. В блоке 502 вычислительное устройство принимает изображение подлинного знака. В блоке 504 вычислительное устройство использует принятое изображение, чтобы сделать измерения признака подлинного знака, что дает в результате набор измерений. Если признак, характеристики которого были измерены, оказывается искажением, тогда набор измерений, следовательно, будет включать в себя данные, касательно искажения. Набор измерения может быть одним из нескольких наборов измерений, которые вычислительное устройство генерирует касательно подлинного знака. Вычислительное устройство может выполнять измерения в разных местоположениях в подлинном знаке. Делая это, вычислительное устройство может разделить знак на несколько подзон (например, в соответствии с промышленным стандартом). В варианте осуществления, если знак является 2D штрихкодом, вычислительное устройство выполняет измерения по всем или подмножеству из суммарного числа подзон (например, все из или подмножество из суммарного числа ячеек) знака.
[0042] Примеры признаков подлинного знака, которые вычислительное устройство может измерять, включают в себя: края, штрихи, зоны между штрихами, посторонние знаки, области, ячейки и подзоны. Примеры характеристик признаков, которые вычислительное устройство может измерять, включают в себя: форму, соотношении сторон, местоположение, размер, контрастность, преобладание разрывов, цвет (например, степень интенсивности цвета, оттенок, или оба показателя), пигментацию, и вариации контрастности. В некоторых вариантах осуществления, вычислительное устройство берет измерения одной и той же характеристики по одним и тем же признакам от знака к знаку, но по разным признакам для разных характеристик. Например, вычислительное устройство может измерять среднюю пигментацию по первому набору подзон знака, и по тому же самому первому набору подзон для последующих знаков, но измерять линейность края по второму набору подзон в знаке и в последующих знаках. Два набора подзон (для разных признаков) можно сказать являются «разными», если присутствует по меньшей мере одна подзона, которая не является общей для обоих наборов. Например, вычислительное устройство может измерять (для всех или подмножества подзон знака): (1) среднюю пигментацию некоторых или всех из подзон знака (например, всех или некоторых из ячеек), (2) любое отклонение в местоположении подзон от оптимально подогнанной сетки, (3) преобладание случайных знаков или пустот, и (4) линейность одного или более краев подзоны.
[0043] В блоке 506 вычислительное устройство создает профиль для признака на основании измерений. В блоке 508 вычислительное устройство создает первый отфильтрованный профиль для признака. Например, вычислительное устройство применяет первый полосовой фильтр к профилю. В блоке 510 вычислительное устройство создает второй отфильтрованный профиль для признака. Например, вычислительное устройство применяет второй полосовой фильтр к профилю. В блоке 512 вычислительное устройство сохраняет первый и второй отфильтрованные профили (например, в устройстве 112 хранения мультимедиа или устройстве 228 хранения мультимедиа).
[0044] В варианте осуществления вычислительное устройство (такое как второе вычислительное устройство 110 или второе вычислительное устройство 224) измеряет значение пикселя (например, значение оттенка серого) каждого пикселя вдоль линии, которая начинается с внутреннего участка знака и простирается за пределы края знака, и вычисляет среднее всех измеренных пикселей (именуемое «проецируемым средним значением пикселя»).
[0045] Со ссылкой на Фиг. 6 описан пример процедуры, которую второе вычислительное устройство 110 или второе вычислительное устройство 224 выполняет в варианте осуществления. В блоке 602 вычислительное устройство принимает изображение знака-кандидата. В блоке 604 вычислительное устройство использует принятое изображение, чтобы сделать измерения признака знака-кандидата. В блоке 606 вычислительное устройство создает профиль для признака, основанный на измерениях. В блоке 608 вычислительное устройство создает первый отфильтрованный профиль для признака. В блоке 610 вычислительное устройство создает второй отфильтрованный профиль для признака. Вычислительное устройство может выполнять блоки 606, 608, и 610, используя изображение знака-кандидата точно таким же образом, как описано выше (например, блоки 506, 508, и 510) для подлинного знака. В блоке 612 вычислительное устройство сравнивает первый и второй отфильтрованные профили с эквивалентным первым и вторым профилями подлинного знака (например, извлекая первый и второй профили подлинного знака из устройства хранения мультимедиа). На основании сравнения вычислительное устройство определяет в блоке 614, является ли знак-кандидат подлинным. Если вычислительное устройство определяет, что знак-кандидат не является подлинным, тогда (в блоке 616) вычислительное устройство указывает, что знак-кандидат не может быть верифицирован (например, посредством передачи сообщения третьему вычислительному устройству 100, при этом третье вычислительное устройство 110 отображает пользователю). Если вычислительное устройство определяет, что знак-кандидат является подлинным, тогда (в блоке 618) вычислительное устройство указывает, что знак-кандидат был верифицирован (например, посредством передачи сообщения третьему вычислительному устройству 110, при этом третье вычислительное устройство 110 отображает пользователю).
[0046] Как отмечено выше, одним возможным признаком, в отношении которого вычислительное устройство (в варианте осуществления) может делать измерения характеристики (например, блок 504 или блок 604), является край. На Фиг. 7A, например, участок 700 штрихкода имеет внутреннюю зону 792 (как правило, напечатанную черным) и край 704. Фиг. 7A также изображает первую опорную ось 706 и простирается за пределы края 704 ко второй опорной оси 708. Существует много возможных значений для расстояния между первой опорной осью 706 и второй опорной осью 708. Например, расстояние может быть расстоянием до следующей напечатанной зоны (промежуток белого пространства) или половиной ширины напечатанной зоны, в которой вычислительное устройство делает измерения, работая в настоящий момент (внутренняя зона 702). Расстояние может быть большей или меньшей дробной частью ширины внутренней зоны 702. В других вариантах осуществления как первая опорная ось 706, так и вторая опорная ось 708 находятся внутри внутренней зоны 702. В других вариантах осуществления обе оси находятся вне внутренней зоны 702 (например, только в белом пространстве). Вычислительное устройство в данном варианте осуществления измеряет значение оттенка серого (например, по шкале от 0 до 255) каждого из пикселей вдоль первой линии 710, вдоль второй линии 712, вдоль третьей линии 714 и вдоль четвертой линии 716. Каждая из первой линии 710, второй линии 712, третьей линии 714 и четвертой линии 716 начинается на первой оси 706 и простирается от нее в направлении и за пределы края 704, и заканчивается на второй оси 708.
[0047] На Фиг. 7A линии 710, 712, 714 и 716 изображены на Фиг. 7A как перпендикулярные первой опорной оси 706 и второй опорной оси 708, но это необязательно. Несмотря на то, что они изображены на Фиг. 7A разнесенными друг от друга, линии 710, 712, 714, и 716 могут не иметь пространства между друг другом. Кроме того, несмотря на то, что изображено четыре линии, их может быть меньше (даже настолько меньше, как одна) или больше. Дополнительно, линии 710, 712, 714 и 716 могут быть прямыми, но это необязательно. Например, если штрихкод (частью которого является участок 700) находится на изогнутой поверхности, тогда линии 710, 712, 714 и 716 могут быть прямыми в плоскости x-y, но изогнутыми по отношению к оси z (например, выпуклость наружу от страницы).
[0048] Несмотря на то, что край 704 изображен в основном линейным по отношению к направлению y, не требуется чтобы он был таким. Например, край может быть смещенной кривой (например, напоминая волнистую линию). Кроме того, несмотря на то, что первая опорная ось 706 и вторая опорная ось 708 изображены как практически параллельные краю 706, не требуется чтобы они были такими.
[0049] В варианте осуществления, если признак является краем, то для заданного края знака, вычислительное устройство создает профиль для края (блоки 506 и 606). Профиль края в варианте осуществления включает в себя ряды данных проецируемых средних значений пикселя, вычисленных для участка знака, который включает в себя край. Вычислительное устройство вычисляет проецируемое среднее значение пикселя у пикселя вдоль каждой из первой линии 710, второй линии 712, третьей линии 714 и четвертой линии 716. Вычислительное устройство может выполнять данную операцию проецируемого среднего значения пикселя по нескольким краям знака и делать это по всей длине края или менее чем по всей длине края. Например, по 2D штрихкоду, такому как показанный на Фиг. 4, вычислительное устройство может выполнять операцию по любому сочетанию из: верхних краев одной или более ячеек, нижним краям одной или более ячеек, левым краям одной или более ячеек и правым краям одной или более ячеек. В другом примере по 1D штрихкоду, такому как тот, что показан на Фиг. 8, вычислительное устройство может выполнять операцию проецируемого среднего значения пикселя по каждому из участков штрихов штрихкода. Кроме того, вычислительное устройство может выполнять операцию по участку 802 тринадцатого штриха (затенен для ясности) штрихкода на Фиг. 8, который включает в себя передний край того штриха, и выполнять операцию по участку 804, который включает в себя задний край. Вычислительное устройство может выполнять данную операцию по передним и задним краям каждого из упомянутых штрихов.
[0050] На Фиг. 7B пиксели первой линии 710 представлены четырьмя отдельными пикселями. Естественно, может присутствовать много больше пикселей, но только четыре показаны для простоты описания. Каждый из Пикселей 1 и 2 имеет значение 255, Пиксель 3 имеет значение 84, и каждый из Пикселей 4 и 5 имеет значение 0. Среднее этих значений (проецируемое среднее значения пикселя) составляет 106.
[0051] Посредством получения среднего по линиям проекции вычислительное устройство учитывает искажения, которые находятся внутри внутренней зоны 702 участка 700 штрихкода в дополнение к искажениям по краю 704. Например, Фиг. 9A показывает участок 900 штрихкода с внутренней зоной 902, в которой присутствуют посторонние пустоты 904, и краем 906, за пределами которого присутствуют посторонние знаки 908. Вычислительное устройство в данном варианте осуществления измеряет значение оттенка серого пикселей вдоль первой линии 910, вдоль второй линии 912, вдоль третьей линии 914 и вдоль четвертой линии 916. Фиг. 9B иллюстрирует, что проецируемое среднее значение (130) пикселя вдоль первой линии 910 является частично результатом посторонних пустот 918, 920, и 922, как впрочем и постороннего знака 924. Эти посторонние знаки и пустоты оказывают влияние на индивидуальные значения пикселей, так что Пиксель 2 имеет значение 220, Пиксель 3 имеет значение 100, Пиксель 4 имеет значение 25 и Пиксель 5 имеет значение 53.
[0052] Фиг. 10 изображает график примера профиля края. Вертикальная ось представляет собой проецируемое среднее значение пикселя (например, значение серого) взятое вдоль линии (например, как описано в связи с Фиг. 7A и Фиг. 9A) в области края знака. Горизонтальная ось представляет собой местоположение вдоль первой опорной оси 706 (например, в единицах значений индекса пикселя, или очередность пикселя в непрерывной линии из пикселей вдоль опорной оси).
[0053] В соответствии с вариантом осуществления, чтобы выполнить блоки 508, 510, 608 и 610, вычислительное устройство применяет ряды полосовых фильтров, один за раз, к профилю края знака, и может делать так для нескольких профилей края (например, для каждого края, для которого вычислительное устройство создало профиль среднего значения). Полосовой фильтр исключает все компоненты пространственных частот за исключением тех компонентов частоты, которые лежат внутри диапазона полосового фильтра. Фиг. 10 показывает пример профиля края до того, как вычислительное устройство применило полосовой фильтр. Фиг. 11 показывает график, представляющий собой проекцию края с Фиг. 10 после того, как вычислительное устройство применяет полосовой фильтр.
1
2
[0054] Существует много возможных типов фильтров и методик фильтрации, которые могут быть использованы в различных вариантах осуществления. В варианте осуществления вычислительное устройство использует полосовой фильтр, который может разрешать напечатанные признаки в диапазоне размера от 0.3 до 3мм. В данном варианте осуществления верхним и нижним пределами для полосового фильтра являются σ=20 и σ=2. Размер наименьшего признака для каждого предела составляет (при длине=3σ (в пикселях)) L1=60 пикселей и L2=6 пикселей. Верхний и нижний предел в циклах/профиль [800 пикселей на профиль, f=800/(2L)]. f1=800/(60+60)=6.6 циклов/профиль, f2=800/(12)=66 циклов/профиль. Размер наименьшего признака для каждого предела в мм (при 800 пикселей на 4см, 0.05мм/пиксель, L1=3мм, L2=0.3мм. Соответственно, полосовой фильтр разрешает напечатанные признаки в диапазоне размера между 0.3 до 3мм.
1
2
[0055] В другом варианте осуществления полосовой фильтр разрешает напечатанные признаки в диапазоне размера между 1.5-4.5мм: σ=30 и σ=10. L1=90 пикселей или 4.5мм, f1=4.4 циклов/профиль.
[0056] В варианте осуществления вычислительное устройство создает множество отфильтрованных профилей для подлинного знака по множеству полос пространственных частот и сохраняет эти отфильтрованные профили в устройстве хранения мультимедиа. Впоследствии, когда вычислительное устройство принимает изображение знака-кандидата, который должен быть протестирован на подлинность, вычислительное устройство (a) создает отфильтрованные профили для знака-кандидата (например, блоки 508, 510, 608 и 610), (b) сравнивает отфильтрованный профиль для знака-кандидата в конкретной полосе пространственных частот с отфильтрованным профилем подлинного знака в той же самой полосе пространственных частот (например, посредством выполнения функции статистической корреляции над рядами данных отфильтрованного профиля подлинного знака и отфильтрованным профилем знака-кандидата) (например, блок 612), (c) назначает показатель корреляции, основанный на статистической корреляции, (d) повторяет (b) и (c) для нескольких полос частот и (e) создает профиль корреляции спектра пространственных частот, основанный на совокупности показателей корреляции. Например, показатель корреляции может быть корреляцией числовых рядов для подлинных и потенциально возможных данных метрик, после полосовой фильтрации при конкретной полосе частот.
[0057] В варианте осуществления профиль корреляции спектра пространственных частот состоит из рядов данных, которые включают в себя показатели корреляции, упорядоченные предварительно определенным образом. Фиг. 12 показывает пример профиля корреляции спектра пространственных частот, изображённых в качестве графика. Горизонтальная ось состоит из числовых значений, назначенных каждому из полосовых фильтров. Например, полосовой фильтр #1 может допускать компоненты спектра из длин волны от 3 миллиметров до 6 миллиметров, полосовой фильтр #2 может допускать компоненты спектра из длин волны от 6 миллиметров до 12 миллиметров и т.д. Вертикальная ось состоит из показателей корреляции у операции корреляции, выполненной вычислительным устройством над соответствующими отфильтрованными профилями знака-кандидата и подлинного знака.
[0058] В варианте осуществления вычислительное устройство сравнивает профиль корреляции спектра пространственных частот знака-кандидата и таковой у подлинного знака и определяет на основании сравнения, является ли знак-кандидат подлинным знаком. Дополнительно или в качестве альтернативы, вычислительное устройство определяет, был ли знак-кандидат напечатан, используя ту же самую печатную форму, что и подлинный знак (например, после того, как делается определение того, что знак-кандидат не является подлинным). Форма профиля корреляции спектра пространственных частот указывает результат, а вычислительное устройство может интерпретировать данную форму как часть выполнения блока 614. Например, Фиг. 12 показывает типичную 'горбатую' форму подлинного знака (линия 1202) и низкую, плоскую линию контрафактного знака (линия 1204). Фиг. 13 показывает подлинный знак (линия 1302) против фотокопии того же самого подлинного знака (1304).
[0059] Должно быть понятно, что примерные варианты осуществления, описанные в данном документе, следует рассматривать только в описательном смысле, а не в целях ограничения. Описания признаков и аспектов в рамках каждого варианта осуществления, как правило, следует рассматривать как доступные для других сходных признаков или аспектов в других вариантах осуществления. Специалистам в соответствующей области техники следует понимать, что различные изменения по форме и в деталях могут быть выполнены здесь, не отступая от их сущности и объема, как определяется нижеследующей формулой изобретения. Например, этапы блок-схем на Фиг. 5 и Фиг. 6 могут быть переупорядочены таким образом, который будет очевиден специалистам в соответствующей области техники. Кроме того, все этапы этих блок-схем, как, впрочем, и описанных здесь способов, могут выполняться на одном вычислительном устройстве.