CN101911095A - 基于形态运算的条形码检测 - Google Patents

基于形态运算的条形码检测 Download PDF

Info

Publication number
CN101911095A
CN101911095A CN2009801015764A CN200980101576A CN101911095A CN 101911095 A CN101911095 A CN 101911095A CN 2009801015764 A CN2009801015764 A CN 2009801015764A CN 200980101576 A CN200980101576 A CN 200980101576A CN 101911095 A CN101911095 A CN 101911095A
Authority
CN
China
Prior art keywords
bar code
image
intensity
edge
low
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2009801015764A
Other languages
English (en)
Other versions
CN101911095B (zh
Inventor
李向川
李京强
黄豪
江晓云
约瑟夫·张
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN101911095A publication Critical patent/CN101911095A/zh
Application granted granted Critical
Publication of CN101911095B publication Critical patent/CN101911095B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1443Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1452Methods for optical code recognition including a method step for retrieval of the optical code detecting bar code edges

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Electromagnetism (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本发明描述用于在图像内检测条形码的技术。图像处理器可(例如)处理图像以检测所述图像内的可能为条形码的区。所述图像处理器可将所述图像的同时展现边缘的高度集中和具有低光学强度的像素的高度集中的区识别为潜在条形码。所述图像处理器可使用若干形态运算来识别所述区。所述图像处理器可接着通过验证所述区是否具有独特的条形码特征而确定所述所识别的区是否实际上为条形码。本发明中所描述的条形码检测技术可独立于所述图像内的条形码大小、位置和定向。此外,对形态运算的所述使用产生较快速且计算上更有效的条形码检测以及较低的计算复杂性。

Description

基于形态运算的条形码检测
对共同待决的专利申请案的参考
本专利申请案涉及以下共同待决的由Chinchuan Andrew Chiu与此同时申请的题为“具有集成的条形码扫描的图像俘获装置(IMAGE CAPTURE DEVICE WITH INTEGRATED BARCODE SCANNING)”的美国专利申请案,所述申请案具有代理人档案号071438,其已转让给本案受让人,且以引用的方式明确并入本文中。
技术领域
本发明涉及图像处理,且更特定来说,涉及用于在图像内检测条形码的技术。
背景技术
条形码为呈一个或一个以上图案形式的信息的机器可读表示。常规的一维条形码表示呈具有各种宽度和间隔的一系列平行邻近条形式的信息。然而,条形码已经扩展而以例如点、同心圆等的图案的若干其它图案来表示信息。这些其它图案可包括以一维(1D)或二维(2D)图案布置的形状。
条形码可用以识别物品、跟踪物品、给物品开清单和给物品定价。通常,条形码用以使用数据库或其它跟踪系统来使识别号码与物品类型相关联。然而,条形码最近已开始用于编码与条形码所附着到的物品或其它相关物品相关联的广泛多种信息。条形码由此为了无关于传统用途的目的已作为传送信息的方式而出现。因此,消费者而非仅零售商已开始接受条形码可传送信息所具有的效率。
发明内容
本发明描述用于在图像内检测条形码的技术。条形码具有使得其尤其易于检测的特定有区别特性。条形码可形成为黑暗(例如,黑色)和明亮(例如,白色)条、圆、点或其它形状的图案。条形码图案包括由条、圆、点或其它形状的图案的间隔形成的若干边缘。条形码图案归因于条、圆、点或其它形状的图案的黑色(或其它黑暗色彩)而还包括具有低光学强度的若干区。不仅条形码包括若干边缘和低强度像素值,而且边缘和低强度区为同时发生的(即,同时存在)。
条形码检测模块处理数字图像以识别表示图像内的强度上的高对比度过渡的一个或一个以上边缘。条形码检测模块还处理数字图像以识别所述数字图像的具有低光学强度的区。条形码检测模块接着将数字图像内的展现所识别边缘的高度集中和具有低光学强度的所识别区的高度集中两者的位置识别为存在条形码的候选者。在一些方面中,条形码检测模块可使用一个或一个以上形态运算来识别这些位置。条形码检测模块可接着通过验证候选位置是否具有独特的条形码特征(例如,特定条形码符号体系的条形码定位图案)而确定候选位置是否实际上为条形码。
在一个方面中,一种方法包含:将强度上的超出强度过渡阈值的过渡识别为所关注场景的数字图像内的边缘;将所述数字图像的具有低于强度阈值的亮度强度的区识别为低强度区;以及基于所识别边缘和所识别低强度区而在数字图像内检测条形码。
在另一方面中,一种装置包含包括条形码检测模块的处理器,所述条形码检测模块将强度上的超出强度过渡阈值的过渡识别为所关注场景的数字图像内的边缘、将数字图像的具有低于强度阈值的亮度强度的区识别为低强度区,以及基于所识别边缘和所识别低强度区而在所述数字图像内检测条形码。
在另一方面中,一种计算机可读媒体包含致使处理器执行以下操作的指令:将强度上的超出强度过渡阈值的过渡识别为所关注场景的数字图像内的边缘、将数字图像的具有低于强度阈值的亮度强度的区识别为低强度区,以及基于所识别边缘和所识别低强度区而在所述数字图像内检测条形码。
在另一方面中,一种装置包含:用于将强度上的超出强度过渡阈值的过渡识别为所关注场景的数字图像内的边缘的装置,用于将数字图像的具有低于强度阈值的亮度强度的区识别为低强度区的装置,和用于基于所识别边缘和所识别低强度区而在所述数字图像内检测条形码的装置。
可以硬件、软件、固件或其任何组合来实施本发明中所描述的技术。如果以软件实施,则软件可执行于处理器中,所述处理器可指一个或一个以上处理器,例如,微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、或数字信号处理器(DSP),或其它等效集成或离散逻辑电路。包含执行所述技术的指令的软件可最初存储于计算机可读媒体中且由处理器加载并执行。因此,本发明还涵盖包含致使处理器执行如在本发明中描述的多种技术中的任一者的指令的计算机可读媒体。在一些情况下,计算机可读媒体可形成可出售给制造商和/或用于装置中的计算机程序产品的部分。计算机程序产品可包括计算机可读媒体,且在一些情况下还可包括封装材料。
在附图和以下描述中阐述一个或一个以上方面的细节。从描述和图式以及从权利要求书将明白所述技术的其它特征、目的和优点。
附图说明
图1为实施本发明中所描述的条形码扫描技术的实例图像俘获装置的框图。
图2为说明包括实施本发明中所描述的条形码扫描技术的图像俘获装置的实例无线通信装置的框图。
图3为进一步详细说明图1和图2的图像俘获装置的框图。
图4为说明执行本发明中所描述的条形码扫描技术的图像俘获装置的实例操作的流程图。
图5为说明检测所关注场景内的条形码的条形码检测模块的实例操作的流程图。
图6A到图6D为根据本发明中所描述的条形码扫描技术而呈现图像的示范性取景器的说明。
图7A到图7G为在本发明中所描述的条形码检测技术的各个阶段期间的图像的说明。
具体实施方式
图1为实施本发明中所描述的条形码检测技术的实例图像俘获装置10的框图。图像俘获装置10可为数码相机,例如,数字静态图像相机、数字视频相机或两者的组合。另外,图像俘获装置10可为独立装置(例如,独立相机),或集成于另一装置(例如,无线通信装置)中。作为一实例,图像俘获装置10可集成于移动电话中以形成所谓的相机电话或视频电话。尽管本发明中所描述的技术可一般适用于所俘获的数字视频,但为了说明目的而将描述所述技术到数字静态图像的应用。
如图1中所示,图像俘获装置10包括图像传感器12、图像处理器14和图像存储模块16。图像传感器12俘获静态图像或可能的整个运动视频序列,在后一情况下,可对视频序列的一个或一个以上图像帧执行条形码检测技术。图像传感器12可包括个别图像传感器元件的二维阵列,例如,以行和列布置的二维阵列。在一些方面中,图像传感器12的图像传感器元件中的每一者可与单一像素相关联。换句话说,在图像传感器元件与像素之间可能存在一一对应。或者,可能存在与每一像素相关联的一个以上图像传感器元件,或与每一图像传感器元件相关联的一个以上像素。图像传感器12可包含(例如)例如互补金属氧化物半导体(CMOS)传感器、电荷耦合装置(CCD)传感器等的固态传感器的阵列。此外,图像传感器12可维持一个或一个以上图像缓冲器,图像传感器12在图像获取期间将图像信息存储到所述一个或一个以上图像缓冲器。
为了俘获数字图像,图像传感器12将图像传感器元件暴露于图像场景以俘获数字图像。图像传感器12内的图像传感器元件可(例如)俘获表示特定像素位置处的场景的光强度的强度值。在一些情况下,传感器12的图像传感器元件中的每一者归因于覆盖那个元件的彩色滤光片而可能仅对一种颜色或色带敏感。举例来说,图像传感器12可包含(例如)红色、绿色和蓝色(RGB)滤光片的阵列。然而,图像传感器12可利用其它彩色滤光片,例如,青色、洋红色、黄色与黑色(CMYK)彩色滤光片。因此,图像传感器12的图像传感器元件中的每一者可俘获仅一种颜色的强度值。因此,图像信息可包括由图像传感器12的传感器元件俘获的像素强度和/或颜色值。
图像俘获装置10可以众多图像俘获模式操作,例如,默认或正常模式(有时还称为“自动”模式)、高速运动模式(有时称为“活动”模式)、低速运动模式(有时称为“风景”模式)、人类主题或脸部模式、黑暗模式、明亮模式以及通常实施于图像俘获装置内的任何其它模式。在一些例子中,这些各种图像俘获模式中的每一者与图像处理器14的传感器配置模块19用以配置影响由图像传感器12俘获的图像的质量的各种图像俘获性质的一组值相关联。活动模式的图像俘获性质(例如)可包括由快速运动表征的用以有效地俘获场景的相对短的曝光时间,而与风景模式相关联的图像俘获性质可包括相对长的曝光时间。在其它例子中,这些模式中的一者或一者以上(例如默认(还称为正常或自动)模式)可致使传感器配置模块19基于图像场景内的某些视觉环境(例如,从图像传感器12接收到的光强度的量度)而配置各种图像俘获性质。举例来说,传感器配置模块19可基于在图像预览期间接收到的光强度来配置曝光时间、焦点或传感器增益。在其它例子中,各种图像俘获模式可致使图像处理器14执行一个或一个以上图像处理算法以增强由图像传感器12俘获的所得图像。在又一例子中,图像俘获装置10可支持在试图俘获最高质量图像中并入有上文所描述的技术中的一者以上的一个或一个以上模式。
图像处理器14(例如)从图像传感器12的缓冲器接收数字图像(或帧)的图像信息,且执行本发明中所描述的条形码检测技术。具体来说,图像处理器14的条形码扫描仪模块18确定所关注场景的数字图像是否包括一个或一个以上条形码。条形码为呈一个或一个以上图案形式的信息的机器可读表示。常规的一维条形码表示呈具有各种宽度、间隔和长度的一系列平行邻近条形式的信息。然而,条形码已经扩展而以例如点、同心圆等的图案的若干其它图案来表示信息。这些其它图案可包括以一维(1D)或二维(2D)图案布置的形状。1D和2D条形码的一些实例包括通用产品码(UPC)、码39条形码、码128条形码、PDF417条形码、EZ码条形码、数据矩阵条形码、QR码条形码或利用任何其它类型符号体系的条形码。
在一些例子中,条形码扫描仪模块18可在以非条形码图像俘获模式操作时检测条形码。换句话说,条形码扫描仪模块18可在以上文所描述的不同图像俘获模式中的任一者操作时检测条形码,所述图像俘获模式例如为默认图像俘获模式、脸部模式、黑暗模式、明亮模式或不是经特定设计以用于俘获条形码图像的任何其它图像俘获模式。在其它例子中,条形码扫描仪模块18可在以经特定设计以用于俘获条形码图像的条形码图像俘获模式操作时检测条形码。
条形码扫描仪模块18根据本发明中所描述的技术在图像内检测条形码。条形码具有使得其尤其易于检测的特定有区别特性。如上文所描述,条形码形成为条、圆、点或其它形状的图案。条形码图案包括由条、圆、点或其它形状的图案的间隔形成的若干边缘。条形码图案归因于黑色(或其它黑暗色彩)条圆、点或其它形状的图案而还包括若干低光学强度区。不仅条形码包括若干边缘和低强度像素值,而且边缘和低强度区为同时发生的(即,同时存在)。如下文将更详细描述,条形码扫描仪模块18可将数字图像内的同时展现边缘的高度集中和低强度值的高度集中的位置识别为存在条形码的候选位置。条形码扫描仪模块18可接着通过验证候选位置是否具有独特的条形码特征(例如,特定条形码符号体系的条形码定位图案)而确定候选位置是否实际上为条形码。
当在所关注场景内检测到条形码后,传感器配置模块19可配置与图像传感器12相关联的一个或一个以上图像俘获性质。传感器配置模块19可(例如)配置与图像传感器12相关联的曝光时间和焦点控制中的一者或一者以上。图像传感器12根据经配置的图像俘获性质来俘获所关注场景的包括条形码的图像。以此方式,图像俘获装置10可将条形码扫描功能性集成于图像俘获装置10的默认操作内。
条形码扫描仪模块18可执行对所俘获图像或至少所俘获图像的包括条形码的区的额外处理,以进一步增强图像的条形码部分的质量。条形码扫描仪模块18可(例如)处理图像或图像的包括条形码的区以增强条形码的对比度、使条形码的图像锐化、从图像中滤出噪声、校正图像的旋转或执行条形码图像的去卷积。在一些例子中,可基于对所关注场景内的条形码的检测来执行这些额外处理技术。
可通过一个或一个以上微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、或任何其它等效离散或集成逻辑电路,或其组合来实现图像处理器14。在一些实施例中,图像处理器14可形成编码器-解码器(CODEC)的部分,所述CODEC根据例如运动图片专家组(MPEG)-2、MPEG-4、国际电信联盟(ITU)H.263、ITU H.264、联合照相专家组(JPEG)、图形交换格式(GIF)、标签图像文件格式(TIFF)等特定编码技术或格式来对图像信息进行编码。图像处理器14可对图像信息执行额外处理,例如,图像修剪、压缩、增强等。
图像处理器14可将所俘获的图像或至少所俘获图像的包括条形码的区存储于图像存储模块16中。或者,图像处理器14可对图像执行额外处理,且将呈经处理或经编码的格式的整个图像或含有条形码的区存储于图像存储模块16中。如果图像信息伴有音频信息,则音频信息还可独立地或结合包含一个或一个以上帧(含有图像信息)的视频信息而存储于图像存储模块16中。图像存储模块16可包含任何易失性或非易失性存储器或存储装置,例如只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)或快闪存储器,或例如磁性数据存储装置或光学数据存储装置。
若干其它元件也可包括于图像俘获装置10中,但为了说明的简单和简易而未特定说明于图1中。举例来说,图像俘获装置10可包括用于俘获图像的额外组件,例如,透镜、快门、闪光装置和取景器。图1中所说明的架构仅为示范性的,因为可以多种其它架构实施本发明中所描述的技术。此外,可由硬件和/或软件组件的任何合适组合来实现图1中说明的特征。
图2为说明包括实施本发明中所描述的条形码检测技术的图像俘获装置10的实例无线通信装置20的框图。换句话说,图2展示集成于无线通信装置20内的图像俘获装置10。在上文关于图1描述了图像俘获装置10的操作,且因此在此将不详细描述。无线通信装置20可包含无线通信装置手持机,例如,具有图像俘获能力的蜂窝式电话(例如,所谓的相机电话或视频电话)、视频记录器、网络摄像头、个人数字助理(PDA)、膝上型计算机或具有图像俘获和无线通信能力的任何其它装置。尽管在无线通信装置的上下文中进行说明,但本发明的技术还可适用于有线通信装置。
在图2的实例中,无线通信装置20包括图像俘获装置10、编码模块22、发射器24、取景器26和条形码解码器模块28。编码模块22可对所俘获的图像信息进行编码以将图像压缩为特定图像压缩格式以供存储和/或发射。编码模块22可使用若干图像压缩格式(包括JPEG、TIFF、GIF或其它图像压缩格式)中的任一者来压缩图像。在视频的情况下,编码模块22可使用任何数目的视频压缩格式(例如MPEG、MPEG高级视频译码(AVC)第10部分、ITU H.264等)来压缩视频。
无线通信装置10可经由发射器24将经编码的图像发射到另一装置。发射器24通常提供到蜂窝式网络(例如,码分多址(CDMA)网络、宽带码分多址(W-CDMA)网络、时分多址(TDMA)网络,和全球移动通信系统(GSM)网络,或其它类似网络)的接口。除蜂窝式网络之外或作为对蜂窝式网络的替代,发射器24可提供到如由相关的美国电气电子工程师协会(IEEE)802.11标准中的任一者所界定的无线网络,或任何其它有线或无线网络的接口。
在一些例子中,无线通信装置10可包括用以接收经编码数据的接收器和用以解码数据的解码器。同样,无线通信装置可包括单独的接收器或收发器,所述收发器包括发射器24的发射电路和接收电路。解码器可为单独的解码模块,或可与编码模块24一起集成到CODEC中。
无线通信装置20可在取景器26上呈现由图像俘获装置10俘获的图像或待由图像俘获装置10俘获的所关注场景的实时图像(即,图像预览)。取景器26可包含电子取景器。示范性电子取景器通常包括一种或一种以上类型的显示器,例如,液晶显示器(LCD)、有机发光二极管(OLED)显示器、等离子体显示面板(PDP)、发光二极管(LED)显示器(例如,有源矩阵LED显示器),或能够呈现所俘获或实时图像的任何其它类型的显示器。取景器26还可包含更常规的光学取景器而非上述电子取景器。在无线通信装置20的情况下,取景器26可包含通用电子显示器,其中显示器还呈现关于无线通信装置20可执行的其它功能的信息。举例来说,如果无线通信装置20表示所谓的相机电话,则取景器26还可呈现关于蜂窝式电话呼叫的发射和接收的信息。
图2的无线通信装置20还包括条形码解码器模块28。条形码解码器模块28可在一些例子中包含在无线通信装置20内执行的软件应用程序,或在其它例子中包含专用硬件组件,或两者的组合。在任一例子中,条形码解码器模块28一般通过解码由条形码图像呈现的一维或多维图案而提取在给定条形码图像内编码的信息(有时称为“有效负载”)。在解码条形码之后,条形码解码器模块28出于利用有效负载的目的而可进一步致使其它模块执行,或可自身利用所述有效负载。
具体来说,条形码解码器模块28可解码由图像俘获装置10接收到的条形码图像内所包括的图案以提取有效负载。条形码解码器模块28可(例如)存取符号库以解码条形码。符号库可(例如)包括有效负载的单一数字和/或字符的编码以及在解码条形码的过程中有用的其它信息。在一些例子中,如在通用产品码(UPC)的情况下,有效负载可识别有效负载所附着到的物品。另外,有效负载可包括与条形码所附着到的物品相关联的额外信息。举例来说,有效负载可包括未显示于物品自身上的额外物品信息、关于相关物品的信息、物品或相关物品的促销优惠券、物品或相关物品的相关因特网链接,或任何其它相关联信息。
在一些例子中,信息可直接包含于条形码的有效负载内。在其它例子中,包含于有效负载内的信息可用以(例如)从使有效负载与关于物品的额外信息相关联的数据库中检索相关信息。在有效负载包括相关因特网链接的情况下,举例来说,有效负载可包含超文本传输协议(HTTP)地址。条形码解码器模块28可调用网络浏览器来接入由有效负载指定的HTTP地址,并将HTTP地址加载于取景器26上。以此方式,无线通信装置20的用户可经由因特网观看与所俘获条形码所附着到的物品相关联的额外信息。另外,用户可利用条形码的有效负载来获得用于不与物品自身相关的应用程序的信息。举例来说,用户可扫描位于路牌上的条形码,且接着存取地图程序以得到从包括所述条形码的物品(例如,路牌)到用户想要前往的位置的方向。
尽管描述为仅包括图像俘获装置10、编码模块22、发射器24、取景器26和条形码解码器模块28,但无线通信装置20可包括其它模块,例如,用于与用户介接的用户接口(例如,小键盘),用于执行额外操作的一个或一个以上处理器,和用于接受可装卸存储器、耳机、电源和任何其它所述外围装置的各种端口和插座。无线通信装置20可另外包括用于发射和接收信息的其它组件,例如,调制解调器、频率转换器、滤波器和放大器电路。
图3为进一步详细说明图1和图2的图像俘获装置10的框图。如图3中所说明,图像传感器12可包括可存储关于所关注场景的图像信息的图像缓冲器30。图像传感器12在图像预览期间可(例如)将图像信息存储于图像缓冲器30中。更特定来说,图像传感器12在用户将图像俘获装置10指向所关注场景时但在用户致动按钮以俘获图像之前可将图像信息存储于图像缓冲器30中。以此方式,可图像缓冲器30视为存储待由图像俘获装置10俘获的所关注场景的实时图像。缓冲器30可包含任何易失性或非易失性存储器或存储装置,例如,只读存储器(ROM)电可擦除可编程只读存储器(EEPROM)或快闪存储器,或例如磁性数据存储装置或光学数据存储装置。尽管展示为包括一个图像缓冲器30,但图像传感器12可能不包括图像缓冲器或包括多个图像缓冲器。
图像传感器12还一般包括用于配置图像传感器12的一个或一个以上图像俘获控制性质32。在说明于图3中的实例中,图像传感器12包括曝光定时器32A、焦点控制32B和传感器增益32C。曝光定时器32A表示用于设定图像传感器12暴露于所关注场景的时间的可配置定时器。通常,图像处理器14基于一组常规的曝光公式或与图像俘获装置相关联的曝光表来配置曝光定时器32A。焦点控制32B针对能够自动聚焦于所关注场景的那些图像俘获装置10而存在。焦点控制32B表示用于设定图像传感器12应在上面聚焦的距离和/或设定产生最佳焦点值(例如,由最佳对比度确定的锐度值)的透镜位置的可配置控制值。通常,图像处理器14配置焦点控制32B以使透镜聚焦于所关注场景的特定区(例如,所关注场景的中心)。传感器增益32C表示确定图像传感器12的图像传感器元件的放大器增益的可配置传感器增益控制值。如同曝光时间32A,图像处理器14可基于一组常规的增益公式或与图像俘获装置相关联的增益表来配置传感器增益32C。在一些例子中,曝光定时器32A、焦点控制32B和传感器增益32C传感器增益32C中的一者或一者以上的调整可为互相关联的。尽管在图3中展示为驻留于图像传感器12内,但缓冲器30和图像俘获控制性质32可驻留于图像传感器12外,例如,驻留于图像俘获装置10的包括图像处理器14、图像存储模块16或条形码扫描仪模块18的其它模块内。
条形码扫描仪模块18包括条形码检测模块34和条形码处理模块36。将不同特征描绘为单元或模块意欲突出条形码扫描仪模块18的不同功能方面,且未必暗示所述单元或模块必须由单独硬件、软件和/或固件组件来实现。而是,与一个或一个以上单元或模块相关联的功能性可集成于单独或共同的硬件、软件组件和/或固件组件内。
如上文所描述,图像传感器12俘获数字图像,并将数字图像存储于缓冲器30中。条形码扫描仪模块18从缓冲器30接收数字图像且采用条形码检测模块34以自动检测数字图像内的条形码。如上文所描述,条形码检测模块34可自动检测数字图像内的条形码,而图像处理器14根据非条形码图像俘获模式(例如默认图像俘获模式、高速运动模式、低速运动模式、人类主题或脸部模式、黑暗模式、明亮模式)或未经特定指定以俘获条形码图像的任何其它模式来操作。或者,条形码检测技术可用于经特定指定以用于俘获条形码图像的条形码图像俘获模式中。
条形码检测模块34可使用基于形态运算的检测技术来执行条形码检测。如上文所描述,形态运算技术是基于条形码具有特定有区别特性的事实,即,条形码具有在空间上同时发生的边缘的高度集中的区和低强度值的高度集中的区。如下文将详细描述,条形码检测模块34可通过使用形态运算将同时包括边缘和低光强度的区识别为存在条形码的候选者且验证候选区是否具有独特的条形码特征而检测条形码。
条形码检测模块34可从图像缓冲器30获得所俘获数字图像的亮度值。当所俘获图像信息处于Y-Cb-Cr(亮度、蓝色色度、红色色度)域中时,举例来说,条形码检测模块34可检索Y通道值以用于条形码检测中。在图像信息处于另一色域(例如,RGB(红色、绿色、蓝色)域)中的例子中,条形码检测模块34可将图像转换为灰度级。在一些例子中,可(例如)使用锐化掩蔽而使亮度信息稍微锐化,以辅助条形码检测。
条形码检测模块34处理图像以识别数字图像内的边缘。边缘为数字图像的展现亮度强度中的高对比度过渡的位置。举例来说,边缘可界定从低强度到高强度(即,从明亮到黑暗)或从高强度到低强度(即,从黑暗到明亮)的过渡。归因于条形码的性质,即,黑色与白色(或其它黑暗与明亮)图案,条形码产生突出的可易于检测的边缘。为了识别数字图像内的边缘,条形码检测模块34可分析图像以检测亮度值展现显著改变的位置。条形码检测模块34可使用常规的边缘检测技术来识别图像内的边缘。举例来说,条形码检测模块34可将内核矩阵(例如,权重或倍增因子的矩阵)应用到数字图像以检测边缘。内核矩阵通常远小于应用内核矩阵的实际图像。为实例的目的将描述三像素乘三像素(3×3)内核矩阵。然而,条形码检测模块34可使用其它尺寸的内核矩阵。
具体来说,条形码检测模块34随后将3×3内核矩阵定位在图像的每一像素上的中心处,且使中心像素周围的3×3区的像素值与内核矩阵的对应权重相乘以产生经加权的像素值。条形码检测模块34对经加权的像素值求和以获得中心像素的一阶导数。图像处理器将中心像素的一阶导数与过渡阈值进行比较,且在一阶导数大于或等于过渡阈值时检测边缘。如果一阶导数大于或等于过渡阈值,则确定像素位于边缘上。在一个方面中,条形码检测模块34可将经确定为位于边缘处的像素设定到与白色或黑色相关联的强度值,且将经确定为并非位于边缘处的像素设定到相反强度值(例如,黑色或白色)。因此,边缘检测的结果可为作为二进制图像的边缘地图,所述边缘地图表示在移除除所识别边缘外的所有细节的情况下的原始图像。二进制图像可为边缘为白色且剩余图像为黑色的黑白图像,或反之亦然,即边缘为黑色且剩余图像为白色。尽管将条形码检测模块34描述为使用数字图像的一阶导数来检测边缘,但可使用其它边缘检测技术来检测图像内的边缘,例如使用数字图像的二阶导数。
条形码检测模块34还处理图像以识别图像的具有低强度的区(本文中称为“低强度区”)。低强度区与图像的黑暗部分对应。条形码检测模块34可经由定阈值来识别图像的低强度区。具体来说,条形码检测模块34可通过比较像素强度值中的每一者与强度阈值而识别图像的低强度区,且滤出大于或等于强度阈值的任何像素值。因此,低强度检测的结果可为作为二进制图像的低强度地图,其表示在移除了高强度区的情况下的原始图像。在一个实例中,条形码检测模块34可将小于或等于强度阈值的像素强度值设定为白色,且将大于或等于强度阈值的像素强度值设定为黑色。在此情况下,图像的低强度区表示为白色区,且图像的非低强度区表示为黑色。或者,低强度区可表示为黑色区,且其它区表示为白色区。在一些例子中,条形码检测模块34可处理数字图像以并行地识别图像的边缘和低强度区。
条形码检测模块34对边缘地图执行一个或一个以上形态运算以识别图像内的展现边缘的高度集中的位置。同样,条形码检测模块34对低强度地图执行一个或一个以上形态运算以识别图像内的展现低强度值的高度集中的位置。可同时(即,并行地)或连续地对边缘地图和低强度地图执行形态运算。形态运算可包括膨胀运算、腐蚀运算、开运算、闭运算等中的一者或一者以上。在一个实例中,条形码检测模块34可对边缘地图和低强度地图执行膨胀。膨胀一般填充孔和断裂区域,且连接由小于用于膨胀的建构元件的大小的空间分离的区域。
对于二进制图像来说,将例如3×3建构元件的建构元件定位在像素中的每一者上的中心处。如果建构元件内的像素中的任一者为白色,则建构元件在其上中心处的像素值被设定为白色。可针对灰度级图像执行类似方法。在灰度级图像中,举例来说,可使用建构元件通过将像素值设定为等于建构元件内的像素值中的最大像素值来重新计算像素值中的每一者。以此方式,由黑暗区包围的明亮区的大小增长,且由明亮区包围的黑暗区的大小缩小。图像中的小黑暗点将随着其经“填充”到周围强度值而消失。该效应在数字图像中的强度快速改变的地方(例如,条形码所在的区中)最为明显。
条形码检测模块34组合经膨胀的边缘地图与经膨胀的低强度地图。条形码检测模块34可(例如)执行“与”运算以组合经膨胀的边缘地图与经膨胀的低强度地图。经组合的图像表示图像的被识别为边缘和低强度区的部分。换句话说,经组合的图像表示图像中的边缘和低强度区为空间上同时发生所在的部分。
条形码检测模块34再次对经组合的图像执行一个或一个以上形态运算。举例来说,条形码检测模块34可对经组合的图像执行另一膨胀运算,以填充孔和断裂区域,且连接由小于用于膨胀的建构元件的大小的空间分离的区域。条形码检测模块34还可执行对经组合的经膨胀图像的淹没填充(flood fill)操作以进一步填充经组合的经膨胀图像的区内的任何剩余孔。淹没填充操作填充对象内的孔。在一些例子中,条形码检测模块34可执行闭运算而非淹没填充操作。闭运算使在填充元件的大小内的小孔闭合,而淹没填充操作使对象内的所有孔闭合而不管孔的大小。以此方式,对经组合的图像执行的一个或一个以上形态运算使得具有重叠边缘和低强度部分的区成为实心或几乎实心的白色区。
条形码检测模块34分析在一个或一个以上形态运算之后保留于经组合的图像中的位置,以识别可能潜在为条形码的数字图像的位置。换句话说,条形码检测模块34确定位置是否为存在条形码的候选者。条形码检测模块34可(例如)将保留于经组合的图像中的位置中的每一者与一个或一个以上条形码准则进行比较,以确定位置是否为存在条形码的候选者。条形码检测模块34可(例如)将位置的大小与条形码大小准则进行比较,以确定位置对于存在条形码来说是过小还是过大。如果位置的大小小于阈值,则条形码检测模块34可确定位置不是条形码。即使位置经检测为条形码,过小的位置仍可能不能被图像俘获装置10的透镜系统足够详细地俘获,从而不能分辨条形码。作为另一实例,条形码检测模块34可将位置的形状与条形码形状准则进行比较,以排除实质上不类似于条形码的形状(例如,矩形或正方形)的位置。在又一实例中,条形码检测模块34可将位置的填充因数与条形码填充因数准则进行比较。具体来说,可在位置周围置放正方形或矩形以确定相对于周围矩形区域不是白色的像素的数目。如果相对于周围矩形区域不是白色的像素的百分比超出阈值百分比,则可从候选位置排除所述位置。
条形码检测模块34可接着通过验证位置处的剩余数字图像是否具有独特条形码特征而确定剩余位置是否实际上为条形码。在一些2D条形码的情况下,举例来说,条形码检测模块34可分析图像的被条形码检测模块34识别为存在条形码的候选者的位置以确定所识别位置是否包括条形码定位图案。在2D数据矩阵条形码的情况下,条形码检测模块34可寻找位置内的独特周边图案,例如,构成交替的黑色和白色正方形模块的两根垂直线。在2D QR条形码的情况下,条形码检测模块34可寻找所识别位置的三个隅角处的嵌套交替的黑暗和明亮正方形的定位图案。然而,条形码检测模块34可针对其它独特条形码定位图案或与其它条形码符号体系相关联的其它独特特征来分析所识别的位置。此外,条形码检测模块34可针对独特条形码特征或图案来分析除原始图像外的图像,例如,数字图像的灰度级版本、所产生的边缘地图或所产生的低强度地图。
上文所描述的条形码检测技术可提供若干优点。举例来说,条形码检测技术可独立于图像内的条形码大小、位置和定向。此外,在本发明中所描述的条形码检测技术中使用形态运算产生较快且计算上更有效的条形码检测。此外,条形码检测技术可另外具有较低的计算复杂性。
如果条形码检测模块34在图像内来检测到条形码,则图像处理器14可控制图像传感器12俘获图像而不进一步执行本发明中所描述的条形码扫描技术。即,图像俘获装置10可根据常规的图像俘获技术(例如,基于所关注场景内光的量或以处于所关注场景的中心的焦点)来俘获图像。事实上,图像俘获装置10的用户可能甚至不知晓图像俘获装置10曾试图检测所关注场景内的条形码。而是,可在无用户参与的情况下在后台执行条形码检测。
当在预览图像内检测到条形码后,条形码扫描仪模块18可与取景器(例如图2的取景器26)交互以指示在图像内检测到条形码。在一些例子中,条形码扫描仪模块18可(例如)经由在所检测条形码周围置放一框而进一步向用户指示条形码在图像内的位置。条形码扫描仪模块18还可提示图像俘获装置10的用户确定所述用户是否需要俘获条形码并执行其它条形码解码操作,或仅根据常规的图像俘获技术来俘获一般所关注场景。以此方式,用户具有在所关注场景内存在条形码但用户的意图不是扫描条形码时以常规的方式俘获所关注场景的选项。然而,在其它方面中,图像俘获装置10可能不提示用户,而是仅根据本文中的技术俘获并处理图像,即,如同目的是在所关注场景内扫描条形码一般。可如同目的是在扫描所关注场景内的条形码一般而使用多种技术中的任一者来确定是否俘获并处理图像。举例来说,当条形码大于或等于阈值大小(例如,条形码占据图像的至少四分之一)时,图像俘获装置10可如同目的是扫描所关注场景内的条形码一般而俘获并处理图像。
如果用户响应于条形码提示而响应应执行其它条形码解码操作或未提供此提示,则传感器配置模块19可配置图像传感器12的图像俘获性质32,使得图像传感器12可以改进的质量来俘获条形码。具体来说,传感器配置模块19配置图像传感器12的图像俘获性质32以改进所关注场景的包括条形码的区的质量。举例来说,传感器配置模块19可配置曝光定时器32A和/或焦点控制32B,使得图像传感器12将以高质量俘获所关注场景的具有条形码的区。即,给定条形码在图像内的位置,传感器配置模块19可计算所关注场景的含有条形码的那个区的最佳曝光时间,且使用常规的曝光时间算法来配置曝光定时器32A。举例来说,传感器配置模块19可分析所关注场景的含有条形码的区中的光强度,且基于所关注场景的那个特定区的光强度来设定曝光时间。
除此之外或替代地,给定条形码在所关注场景内的位置,传感器配置模块19可计算所关注场景的含有条形码的那个区的最佳焦点控制,且使用常规的焦点控制算法来配置焦点控制32B以使用条形码的位置作为图像传感器12的焦点。一旦配置图像俘获性质32,图像处理器14可致使图像传感器12根据图像俘获性质32来俘获图像。尽管在上文所描述的实例例子中,由传感器配置模块19配置的图像俘获性质32包括曝光时间和焦点控制,但作为曝光时间和焦点控制的替代或除曝光时间和焦点控制之外,可配置其它图像俘获性质。举例来说,传感器配置模块19可配置传感器增益,例如,图像传感器12的放大器增益。
在一些例子中,图像俘获装置10可以条形码图像俘获模式操作。在此情况下,可在于图像内检测条形码之前配置图像俘获性质32。条形码检测模块34可为了处理条形码的目的而在图像内检测条形码,而非为了配置图像传感器12的图像俘获性质32的目的在图像内检测条形码。
在根据图像俘获性质32俘获所关注场景的图像之后,条形码处理模块36可处理所俘获的图像。条形码处理模块36可(例如)修剪图像,使得仅图像的包括条形码的区保留。条形码处理模块36可(例如)使用在检测条形码期间由条形码检测模块34产生的条形码位置信息来修剪所俘获的图像以仅在所述图像内包括所述条形码。或者,条形码检测模块34可在条形码俘获操作中于此点处执行条形码检测以识别条形码在数字图像内的位置。在图像内存在一个以上条形码的例子中,条形码处理模块36可从图像中单独地提取条形码中的每一者。
替代地或除此之外,条形码处理模块36可进一步处理所俘获的图像以移除失真,从而产生整洁均匀的条形码以供例如图2的条形码解码器模块28等后续条形码解码器模块使用。在一些例子中,条形码处理模块36可校正仅图像的包括条形码的区中的失真。或者,条形码处理模块36可校正整个图像的失真。条形码处理模块36可执行失真校正技术以校正多种失真问题中的任一者。举例来说,条形码处理模块36可使图像旋转以定向图像内的条形码,使得可正确检视条形码。
作为另一实例,条形码处理模块36可处理图像以校正由光和阴影引起的可能混淆条形码的一维或多维图案的失真失真校正模块38可另外处理图像以校正与角度有关的问题。即,条形码可能归因于用户俘获条形码的图像所在处的角度而歪斜。条形码处理模块36可因此处理图像以校正歪斜的条形码。条形码处理模块36还可校正条形码的在将条形码置放于不平坦物品上时发生的翘曲。举例来说,条形码处理模块36可校正条形码的归因于条形码置放于铝罐或玻璃瓶上的翘曲。
图像处理器14可将所俘获的条形码图像存储于图像存储模块16内。图像俘获装置10可将所俘获的图像提供到条形码解码器模块28(图2)以用于解码以便提取条形码的有效负载。以此方式,条形码扫描仪模块18可提供可凭借其以可支持更可靠和准确的条形码解码的改进的图像质量来俘获条形码的一致的前端接口。在图像俘获装置以非条形码图像俘获模式执行的同时自动检测条形码在消除或减少外来用户交互(例如,选择特殊条形码相机模式或执行特殊条形码俘获应用程序)的过程中可尤其有效。此外,配置图像传感器12的图像俘获性质而非在后端处执行图像增强技术可提供条形码的较高质量图像。
可由执行存储于计算机可读媒体上的指令的一个或一个以上可编程处理器来执行如本发明中所描述且归于条形码扫描仪模块18和传感器配置模块19的功能性,其中指令和/或代码致使处理器执行如本发明中所描述的条形码扫描。在一些情况下,计算机可读媒体可形成可出售给制造商和/或用于装置中的计算机程序产品的部分。或者,本发明中所描述且归于条形码扫描仪模块18和传感器配置模块19的技术可大体上实施于硬件中且尤其实施于集成电路装置内。集成电路装置包含经配置以执行本发明中所描述的功能性的一个或一个以上处理器。
图4为说明执行条形码扫描的图像俘获装置例如图3的图像俘获装置10)的实例操作的流程图。最初,用户起始图像俘获且图像传感器12开始图像获取(42)。即,图像传感器12俘获图像信息并将图像信息存储到图像缓冲器30。在一些例子中,图像传感器12在图像预览期间(即,在用户将图像俘获装置10指向所关注场景时)但在用户致动按钮以俘获图像之前俘获图像信息并将图像信息存储到图像缓冲器30。图像获取可以包括条形码图像俘获模式的图像俘获模式中的任一者开始。
条形码检测模块34接收数字图像,且检测所关注场景是否包括条形码(44)。条形码检测模块34可识别图像的同时展现边缘的高度集中和具有低光学强度的像素的高度集中的位置。条形码检测模块34可接着通过验证位置是否具有独特条形码特征(例如,条形码定位图案或独特地识别特定条形码符号体系的其它特征)而确定所识别位置是否实际上为条形码。关于图5更详细地描述条形码检测技术。
如果条形码检测模块34在所关注场景内未检测到条形码,则图像处理器14可控制图像传感器12根据基于某一其它准则所确定的图像俘获性质来俘获图像(46)。举例来说,在条形码检测模块34在所关注场景内未检测到条形码时,图像处理器14可控制图像传感器12根据基于所关注场景中的光的量、所关注场景内的运动量,或场景的其它特性而确定的图像俘获性质来俘获图像。
如果在所关注场景内检测到条形码,则条形码扫描仪模块18可提示用户确定所述用户是否需要俘获条形码且执行进一步的条形码解码操作,或仅根据常规的图像俘获技术来俘获所关注的一般场景(48、50)。以此方式,用户具有当在所关注场景内存在条形码但用户的意图不是扫描条形码时以常规的方式俘获所关注场景的选项。
如果用户通过用信号通知放弃进一步处理所检测条形码的意图来响应提示,则图像俘获装置10根据常规的图像俘获性质来俘获图像(46)。在一些例子中,图像俘获装置10可能不提示用户而是可仅根据本文中的技术来俘获并处理图像,即,如同目的为扫描所关注场景内的条形码一般。在所述情况下,假设需要俘获条形码,且可跳过方框48和50。
如果用户用信号通知继续处理所检测条形码的意图或图像俘获装置10并不包括此提示特征,则传感器配置模块19配置图像传感器12的一个或一个以上图像俘获性质(52)。传感器配置模块19可(例如)以上文所描述的方式配置曝光时间32A、焦点控制32B或传感器增益32C,使得以改进的质量俘获所关注场景的包括条形码的区。
图像处理器14致使图像传感器12根据经配置的图像俘获性质来俘获所关注场景的图像(54)。条形码处理模块36可处理所俘获的图像以增加图像的包括条形码的区的质量(56)。条形码处理模块36可(例如)修剪图像,使得仅图像的包括条形码的区保留。替代地或除此之外,条形码处理模块36可进一步处理所俘获的图像以移除失真,从而产生整洁均匀的条形码以供后续条形码解码器模块使用。条形码处理模块36可执行失真校正技术以校正包括与旋转、照明、角度或歪斜,和翘曲相关的失真的多种失真问题中的任一者。
在俘获和处理条形码之后,条形码扫描仪模块18可将条形码提供到条形码解码器模块进行解码以获得有效负载(58)。条形码解码器模块解码条形码以获得有效负载(59)。应注意,此过程可在形式上未将条形码存储到图像存储模块16的情况下发生。即,以上过程可实时或准实时地发生,且条形码可在未曾存储到图像存储模块16的情况下呈现给条形码解码器模块,借此节省图像存储模块16内的空间。然而,在一些例子中,可在将条形码提供到条形码解码器模块之前存储条形码。
图5为说明根据本发明中所描述的技术执行条形码检测的图像俘获装置(例如图3的图像俘获装置10)的实例操作的流程图。最初,条形码检测模块34可获得图像的灰度级版本(60)。当所俘获的图像信息处于Y-Cb-Cr域中时,举例来说,条形码检测模块34可获得Y通道值。在图像信息处于另一色域(例如,R-G-B域)中的例子中,条形码检测模块34可将图像转换为灰度级。
条形码检测模块34产生边缘地图,其为图像的在图像内移除了除所识别边缘外的所有细节的情况下的表示(62)。如上文详细描述,条形码检测模块34可通过在每像素基础上向图像应用边缘检测内核而产生边缘地图。在一个实例中,边缘地图可为二进制图像,即黑白图像,其中边缘为白色且剩余图像为黑色。
条形码检测模块34还产生低强度地图,其为图像的在移除了非低强度区的情况下的表示(64)。条形码检测模块34可通过将像素强度值中的每一者与强度阈值进行比较而识别图像的低强度区,且滤出大于或等于强度阈值的任何像素值。在一个实例中,低强度地图可为二进制图像,其中低强度区为白色且剩余图像为黑色。条形码检测模块34可处理数字图像以并行地识别边缘和低强度区。或者,可连续执行所述操作。
在图5的实例中,条形码检测模块34对边缘地图执行膨胀(66)。条形码检测模块34还对低强度地图执行膨胀(68)。如上文所描述,膨胀大体上填充孔和断裂区域,且连接由小于用于膨胀的建构元件的大小的空间分离的区域。膨胀导致图像的明亮区的大小增长且黑暗区的大小缩小。
条形码检测模块34组合经膨胀的边缘地图与经膨胀的低强度地图(70)。条形码检测模块34可(例如)执行“与”运算以组合经膨胀的边缘地图与经膨胀的低强度地图。换句话说,经组合的图像表示图像中的边缘和低强度区为空间上同时发生所在的部分。条形码检测模块34对经组合的图像执行膨胀,且淹没填充经组合的经膨胀图像中的任何孔(72)。
条形码检测模块34在膨胀和淹没填充之后分析经组合的图像以识别作为存在条形码的候选者的位置(74)。条形码检测模块34可将经组合的图像的位置中的每一者与一个或一个以上条形码准则进行比较,以确定位置是否为存在条形码的候选者。条形码检测模块34可(例如)分析经组合的图像中的位置的大小、位置的形状、位置的填充因数、或其它类似特性,或位置的特性的组合,以识别作为存在条形码的候选者的位置。
条形码检测模块34可验证候选位置是否实际上为条形码(76)。举例来说,条形码检测模块34可针对独特条形码定位图案而分析原始图像的被识别为候选位置的位置,例如,2D数据矩阵条形码的情况下交替的黑色和白色正方形的两根垂直线,或2D QR条形码的情况下位置的三个隅角中的交替黑色和白色正方形的嵌套图案。在其它方面中,条形码检测模块34可分析除原始图像外的图像,例如,数字图像的灰度级版本、所产生的边缘地图或所产生的低强度地图。条形码检测模块34将经验证的位置分类为条形码(78)。换句话说,当候选位置包括独特的条形码特征时,条形码检测模块34检测到条形码。
图6A到图6D为根据本发明中所描述的条形码扫描技术来呈现图像的示范性取景器80的说明。取景器80可实质上类似于图2的取景器26。如图6A中所示,取景器80通常实时地呈现所关注场景的图像82。所关注场景在背景或前景中可包括多个对象,但为易于说明起见而说明为空白场景。图像82包括条形码86附着到或至少呈现为附着到的物品84。物品84可包括若干物品中的任一者,例如,盒子或其它产品封装、罐、杂志或其它产品、路牌或任何其它类型的物品。取景器80可将展示图像俘获装置(例如图3的图像俘获装置10)正以其操作的模式的模式指示符88重叠于图像82上。目前,模式指示符88展示图像俘获装置10正以“默认模式”操作。尽管在图6A到图6D中说明并描述为以默认图像俘获模式操作,但本发明的条形码扫描技术可用于以任何非条形码图像俘获模式检测条形码,所述非条形码图像俘获模式例如为高速运动模式(还称为活动模式)、低速运动(还称为风景或景观模式)、人类主题或脸部模式、黑暗模式、明亮模式或未经特定指定来俘获条形码图像的任何其它模式。另外,本发明的技术还可用于以经特定设计以俘获条形码图像的条形码图像俘获模式检测条形码。
在以默认模式操作时,条形码扫描仪模块18执行本发明中描述的条形码扫描技术。条形码检测模块34(例如)以上文(例如)参看图5描述的方式检测图像82内的条形码86。图6B展示在条形码扫描仪模块18更新取景器80以反映条形码86的检测和位置之后的取景器80。具体来说,取景器80现包括条形码发信号标志89A到89D(“标志89”)。标志89指示条形码86在图像82内的位置。尽管标志89展示为包围条形码86的每一隅角,但标志89可包含能够用信号通知条形码86的位置的任何可见指示符,例如,箭头、框或其它形状,或其它类型的指示符。应注意,条形码检测模块34可不管条形码86在取景器80内的当前呈现而定位条形码86。此通过展示具有降低的质量的条形码86(例如,条形码86的像素化灰度级和稍微歪斜的性质)而反映于图6A到图6C中。
当在图像82内定位条形码86之后,条形码扫描仪模块18在一些例子中可在继续进一步处理条形码86之前提示用户。图6C展示具有重叠于图像82上的用户提示90的取景器80。用户提示90仅为示范性用户提示,且本发明中所描述的技术无需包括用户提示,或可包括完全不同的用户提示。在一些方面中,用户可将用户提示设定为用户偏好。用户提示90提示用户“按下OK以处理条形码”且“按下Exit以拍摄图片”,借此指示如果用户需要继续处理条形码,则用户应按下标记为“OK”的按钮,且如果不需要继续处理条形码,则按下标记为“Exit”的按钮。“OK”和“Exit”按钮两者又仅为示范性的,且本发明中所描述的技术不应限于此狭窄情境。按钮可包括软键、硬键、触摸屏按钮等。假设用户按下示范性“OK”按钮,图6D展示呈现条形码86的所得图像82的取景器80。在多个条形码包括于所关注场景内的例子中,图像俘获装置10可经由取景器80提示用户选择用户关注于扫描所述多个条形码中的哪一者。
如图6D中所示,图像82包括整洁且未失真的条形码86,其表示已经修剪并经处理以校正失真(例如,与先前图6A到图6C的像素化且歪斜的条形码86相关联的对比度和歪斜问题)的图像。图6D的条形码86具有黑色与白色之间的高对比度,且几乎为(如果不完全地的话)正方形。因此,图6D的条形码86呈现均匀的条形码,使得条形码解码器模块可容易提取编码到条形码86的有效负载。尽管描述为呈现于取景器80内,但图6D的均匀条形码86可能未呈现于取景器80内,而是可立即发送到上文所论述的条形码解码器。
图7A到图7G为在本发明中所描述的条形码检测过程的各个阶段期间的条形码的图像的实例说明。图7A展示如最初(例如)在图像预览期间由图像传感器12获取的灰度级图像的实例说明。如上文详细描述条形码检测模块34处理展示于图7A中的灰度级图像以识别图像内的边缘。图7B展示原始灰度级图像内的所识别边缘的边缘地图的实例说明。边缘地图表示在移除了除所识别边缘外的所有细节的情况下的原始图像。在说明于图7B中的实例边缘地图中,图像内的所检测边缘为白色,而剩余图像为黑色。然而,在其它情况下,图像内的所检测边缘可为黑色,且剩余图像为白色。
条形码检测模块34另外处理展示于图7A中的灰度级图像以识别原始灰度级图像内的低强度区。图7C展示灰度级图像的所识别低强度区的低强度地图的实例说明。低强度地图表示在移了除非低强度区的情况下的原始图像。在说明于图7C中的实例低强度地图中,低强度区被说明为白色,且其它区被说明为黑色。然而,在其它情况下,图像内的低强度区可为黑色,且剩余图像为白色。
图7D和图7E分别为在条形码检测模块34执行膨胀之后的边缘地图和低强度地图的实例说明。图7F为在组合经膨胀的边缘地图与经膨胀的低强度地图、执行经组合的图像的膨胀和经膨胀的经组合的图像的淹没填充之后由条形码检测模块34产生的图像的实例说明。如在图7F的实例说明中所说明,包括条形码的若干位置在处理之后仍保留于图像内。典型的所关注场景可包括保留于经组合的图像中的若干其它位置。举例来说,典型的所关注场景的具有其它背景和前景对象的经组合的图像可包括保留的位置,例如,具有文本的位置、包括所关注场景中的其它非条形码对象的边缘的位置等。
条形码检测模块34分析保留的位置以识别可能潜在为条形码的位置。条形码检测模块34可将图像中的位置中的每一者与一个或一个以上条形码准则(例如,大小、形状、填充因数等)进行比较,以确定所述位置是否为存在条形码的候选者。图7G展示在条形码模块34分析位置以选择候选位置之后图像的实例说明。在图7G中说明的图像中的保留的候选位置为两个正方形位置,所述位置对应于图7A的原始灰度级图像中的实际条形码。
可以硬件、软件、固件或其任何组合来实施本文中所描述的技术。描述为模块或组件的任何特征可一起实施于集成逻辑装置中或单独地实施为离散但可互操作的逻辑装置。如果以软件实施,则可至少部分由包含在执行时执行上述方法中的一者或一者以上的指令的计算机可读媒体实现所述技术。计算机可读媒体可形成可包括封装材料的计算机程序产品的部分。计算机可读媒体可包含例如同步动态随机存取存储器(SDRAM)的随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器、磁性或光学数据存储媒体等。除此之外或替代地,可至少部分由以指令或数据结构的形式载运或传送代码且可由计算机存取、读取和/或执行的计算机可读通信媒体来实现所述技术。
可由一个或一个以上处理器执行代码,所述处理器例如为一个或一个以上DSP、通用微处理器、ASIC、现场可编程逻辑阵列FPGA,或其它等效集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指代上述结构或适于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可提供于经配置以用于编码和解码的专用软件模块或硬件模块内,或并入于经组合的视频CODEC中。因此,本发明还涵盖包括用以实施本发明中所描述的技术中的一者或一者以上的电路的多种集成电路装置中的任一者。所述电路可提供于单一集成电路芯片中或多个可互操作的集成电路芯片中。
已描述各个方面。这些和其它方面处于所附权利要求书的范围内。

Claims (38)

1.一种方法,其包含:
将在强度上超出强度过渡阈值的过渡识别为所关注场景的数字图像内的边缘;
将所述数字图像的亮度强度低于强度阈值的区识别为低强度区;以及
基于所述所识别边缘和所述所识别低强度区而在所述数字图像内检测条形码。
2.根据权利要求1所述的方法,其中在所述数字图像内检测所述条形码包含:检测所述数字图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的位置处的所述条形码。
3.根据权利要求2所述的方法,其中检测所述数字图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的位置处的所述条形码进一步包含:
使用至少一个形态运算来识别所述图像内的展现所述所识别边缘的高度集中的位置;
使用至少一个形态运算来识别所述图像内的展现所述所识别低强度区的高度集中的位置;以及
检测所述数字图像内的展现所述所识别边缘的高度集中和所述所识别低强度区的高度集中两者的位置处的所述条形码。
4.根据权利要求3所述的方法,其中所述至少一个形态运算包含膨胀、腐蚀、开和闭中的至少一者。
5.根据权利要求2所述的方法,其进一步包含:
产生表示所述数字图像内的所述所识别边缘的边缘地图;
产生表示所述数字图像内的所述所识别低强度区的低强度地图;以及
组合所述边缘地图与所述低强度地图以产生经组合的图像;
其中在所述数字图像内检测所述条形码包含基于所述经组合的图像而在所述数字图像内检测所述条形码。
6.根据权利要求5所述的方法,其进一步包含对所述经组合的图像执行一个或一个以上形态运算以产生所述图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的至少一个位置。
7.根据权利要求1所述的方法,其中在所述图像内检测所述条形码包含:
识别所述图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的位置;
当所述所识别位置满足一个或一个以上条形码准则时,确定所述位置为存在条形码的候选位置;以及
当所述所识别位置处的所述所关注场景包括独特的条形码特征时,确定所述所识别位置为条形码。
8.根据权利要求7所述的方法,其中确定所述所识别位置为存在条形码的候选位置包含:基于所述所识别位置的形状、所述所识别位置的大小和所述所识别位置的填充因数中的至少一者来确定所述所识别位置为存在条形码的候选位置。
9.根据权利要求7所述的方法,其中当所述所关注场景在所述所识别位置处包括独特的条形码特征时确定所述所识别位置为条形码包含:当在所述所关注场景内在所述所识别位置处检测到条形码定位图案后确定所述所识别位置为条形码。
10.一种装置,其包含
处理器,其包括条形码检测模块,所述条形码检测模块将在强度上超出强度过渡阈值的过渡识别为所关注场景的数字图像内的边缘、将所述数字图像的亮度强度低于强度阈值的区识别为低强度区,以及基于所述所识别边缘和所述所识别低强度区而在所述数字图像内检测条形码。
11.根据权利要求10所述的装置,其中所述条形码检测模块检测所述数字图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的位置处的所述条形码。
12.根据权利要求11所述的装置,其中所述条形码检测模块使用至少一个形态运算来识别所述图像内的展现所述所识别边缘的高度集中的位置、使用至少一个形态运算来识别所述图像内的展现所述所识别低强度区的高度集中的位置,且检测所述数字图像内的展现所述所识别边缘的高度集中和所述所识别低强度区的高度集中两者的位置处的所述条形码。
13.根据权利要求12所述的装置,其中所述至少一个形态运算包含膨胀、腐蚀、开和闭中的至少一者。
14.根据权利要求11所述的装置,其中所述条形码检测模块产生表示所述数字图像内的所述所识别边缘的边缘地图、产生表示所述数字图像内的所述所识别低强度区的低强度地图、组合所述边缘地图与所述低强度地图以产生经组合的图像,且基于所述经组合的图像而在所述数字图像内检测所述条形码。
15.根据权利要求14所述的装置,其中所述条形码检测模块对所述经组合的图像执行一个或一个以上形态运算以产生所述图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的至少一个位置。
16.根据权利要求10所述的装置,其中所述条形码检测模块识别所述图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的位置、当所述所识别位置满足一个或一个以上条形码准则时确定所述位置为存在条形码的候选位置,且当所述所关注场景在所述所识别位置处包括独特的条形码特征时确定所述所识别位置为条形码。
17.根据权利要求16所述的装置,其中所述条形码检测模块基于所述所识别位置的形状、所述所识别位置的大小和所述所识别位置的填充因数中的至少一者来确定所述所识别位置为存在条形码的候选位置。
18.根据权利要求16所述的装置,其中所述条形码检测模块当在所述所关注场景内在所述所识别位置处检测到条形码定位图案后确定所述所识别位置为条形码。
19.根据权利要求10所述的装置,其中所述装置包含无线通信装置。
20.根据权利要求10所述的装置,其中所述装置包含集成电路装置。
21.一种包含指令的计算机可读媒体,所述指令致使处理器:
将在强度上超出强度过渡阈值的过渡识别为所关注场景的数字图像内的边缘;
将所述数字图像的亮度强度低于强度阈值的区识别为低强度区;以及
基于所述所识别边缘和所述所识别低强度区而在所述数字图像内检测条形码。
22.根据权利要求21所述的计算机可读媒体,其中用以致使所述处理器在所述数字图像内检测所述条形码的指令包含:用以致使所述处理器检测所述数字图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的位置处的所述条形码的指
23.根据权利要求22所述的计算机可读媒体,其中用以致使所述处理器检测所述数字图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的位置处的所述条形码的指令进一步包含用以致使所述处理器执行以下操作的指令:
使用至少一个形态运算来识别所述图像内的展现所述所识别边缘的高度集中的位置;
使用至少一个形态运算来识别所述图像内的展现所述所识别低强度区的高度集中的位置;以及
检测所述数字图像内的展现所述所识别边缘的高度集中和所述所识别低强度区的高度集中两者的位置处的所述条形码。
24.根据权利要求23所述的计算机可读媒体,其中所述至少一个形态运算包含膨胀、腐蚀、开和闭中的至少一者。
25.根据权利要求22所述的计算机可读媒体,其进一步包含用以致使所述处理器执行以下操作的指令:
产生表示所述数字图像内的所述所识别边缘的边缘地图;
产生表示所述数字图像内的所述所识别低强度区的低强度地图;以及
组合所述边缘地图与所述低强度地图以产生经组合的图像;
其中用以致使所述处理器在所述数字图像内检测所述条形码的指令包含用以致使所述处理器基于所述经组合的图像而在所述数字图像内检测所述条形码的指令。
26.根据权利要求25所述的计算机可读媒体,其进一步包含用以致使所述处理器对所述经组合的图像执行一个或一个以上形态运算以产生所述图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的至少一个位置的指令。
27.根据权利要求21所述的计算机可读媒体,其中用以致使所述处理器在所述图像内检测所述条形码的指令包含用以致使所述处理器执行以下操作的指令:
识别所述图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的位置;
当所述所识别位置满足一个或一个以上条形码准则时确定所述位置为存在条形码的候选位置;以及
当所述所关注场景在所述所识别位置处包括独特的条形码特征时确定所述所识别位置为条形码。
28.根据权利要求27所述的计算机可读媒体,其中用以致使所述处理器确定所述所识别位置为存在条形码的候选位置的指令包含:用以致使所述处理器基于所述所识别位置的形状、所述所识别位置的大小和所述所识别位置的填充因数中的至少一者来确定所述所识别位置为存在条形码的候选位置的指令。
29.根据权利要求27所述的计算机可读媒体,其中用以致使所述处理器当所述所关注场景在所述所识别位置处包括独特的条形码特征时确定所述所识别位置为条形码的指令包含:用以致使所述处理器当在所述所关注场景内在所述所识别位置处检测到条形码定位图案后确定所述所识别位置为条形码的指令。
30.一种装置,其包含:
用于将在强度上超出强度过渡阈值的过渡识别为所关注场景的数字图像内的边缘的装置;
用于将所述数字图像的亮度强度低于强度阈值的区识别为低强度区的装置;以及
用于基于所述所识别边缘和所述所识别低强度区而在所述数字图像内检测条形码的装置。
31.根据权利要求30所述的装置,其中所述检测装置检测所述数字图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的位置处的所述条形码。
32.根据权利要求31所述的装置,其进一步包含:
用于使用至少一个形态运算来识别所述图像内的展现所述所识别边缘的高度集中的位置的装置;
用于使用至少一个形态运算来识别所述图像内的展现所述所识别低强度区的高度集中的位置的装置;且
其中所述检测装置检测所述数字图像内的展现所述所识别边缘的高度集中和所述所识别低强度区的高度集中两者的位置处的所述条形码。
33.根据权利要求32所述的装置,其中所述至少一个形态运算包含膨胀、腐蚀、开和闭中的至少一者。
34.根据权利要求31所述的装置,其进一步包含:
用于产生表示所述数字图像内的所述所识别边缘的边缘地图的装置;
用于产生表示所述数字图像内的所述所识别低强度区的低强度地图的装置;以及
用于组合所述边缘地图与所述低强度地图以产生经组合的图像的装置;
其中所述检测装置基于所述经组合的图像而在所述数字图像内检测所述条形码。
35.根据权利要求34所述的装置,其进一步包含用于对所述经组合的图像执行一个或一个以上形态运算以产生所述图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的至少一个位置的装置。
36.根据权利要求30所述的装置,其中所述检测装置识别所述图像内的在空间上同时包括所述所识别边缘和所述所识别低强度区的位置、当所述所识别位置满足一个或一个以上条形码准则时确定所述位置为存在条形码的候选位置,且当所述所关注场景在所述所识别位置处包括独特的条形码特征时确定所述所识别位置为条形码。
37.根据权利要求36所述的装置,其中所述检测装置基于所述所识别位置的形状、所述所识别位置的大小和所述所识别位置的填充因数中的至少一者来确定所述所识别位置为存在条形码的候选位置。
38.根据权利要求36所述的装置,其中所述检测装置当在所述所关注场景内在所述所识别位置处检测到条形码定位图案后确定所述所识别位置为条形码。
CN200980101576.4A 2008-02-22 2009-02-21 基于形态运算的条形码检测 Expired - Fee Related CN101911095B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/035,653 US8366004B2 (en) 2008-02-22 2008-02-22 Barcode detection based on morphological operations
US12/035,653 2008-02-22
PCT/US2009/034799 WO2009105731A1 (en) 2008-02-22 2009-02-21 Barcode detection based on morphological operations

Publications (2)

Publication Number Publication Date
CN101911095A true CN101911095A (zh) 2010-12-08
CN101911095B CN101911095B (zh) 2014-04-23

Family

ID=40467305

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980101576.4A Expired - Fee Related CN101911095B (zh) 2008-02-22 2009-02-21 基于形态运算的条形码检测

Country Status (7)

Country Link
US (1) US8366004B2 (zh)
EP (1) EP2093696B1 (zh)
JP (1) JP5265709B2 (zh)
KR (1) KR101169872B1 (zh)
CN (1) CN101911095B (zh)
TW (1) TW200943191A (zh)
WO (1) WO2009105731A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107679437A (zh) * 2017-09-26 2018-02-09 四川元匠科技有限公司 基于Zbar的条形码图像识别算法
CN107875638A (zh) * 2017-11-24 2018-04-06 宁波隆翔环保科技有限公司 一种游戏小汽车
CN108108646A (zh) * 2017-12-29 2018-06-01 Tcl王牌电器(惠州)有限公司 条码信息识别方法、终端和计算机可读存储介质
CN111797645A (zh) * 2020-07-08 2020-10-20 北京京东振世信息技术有限公司 用于识别条形码的方法和装置

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4442624B2 (ja) * 2006-06-22 2010-03-31 株式会社デンソーウェーブ 光学情報読取装置
US8570393B2 (en) * 2007-11-30 2013-10-29 Cognex Corporation System and method for processing image data relative to a focus of attention within the overall image
US8596541B2 (en) * 2008-02-22 2013-12-03 Qualcomm Incorporated Image capture device with integrated barcode scanning
US9189670B2 (en) * 2009-02-11 2015-11-17 Cognex Corporation System and method for capturing and detecting symbology features and parameters
US20110073657A1 (en) * 2009-09-30 2011-03-31 Miroslav Trajkovic Method and apparatus for detecting a barcode
TWI415017B (zh) * 2009-12-30 2013-11-11 Inventec Appliances Corp 銷售時點管理裝置
JP4724802B1 (ja) * 2010-07-30 2011-07-13 株式会社シフト 二次元コードリーダおよびプログラム
JP4724801B1 (ja) * 2010-07-30 2011-07-13 株式会社シフト 二次元コードリーダおよびプログラム
US9792612B2 (en) 2010-11-23 2017-10-17 Echostar Technologies L.L.C. Facilitating user support of electronic devices using dynamic matrix code generation
US9329966B2 (en) 2010-11-23 2016-05-03 Echostar Technologies L.L.C. Facilitating user support of electronic devices using matrix codes
US8386339B2 (en) 2010-11-23 2013-02-26 Echostar Technologies L.L.C. Ordering via dynamic matrix code generation
EP2643801B1 (en) 2010-11-24 2019-10-02 DISH Technologies L.L.C. Tracking user interaction from a receiving device
US8439257B2 (en) 2010-12-01 2013-05-14 Echostar Technologies L.L.C. User control of the display of matrix codes
US9280515B2 (en) 2010-12-03 2016-03-08 Echostar Technologies L.L.C. Provision of alternate content in response to QR code
US8886172B2 (en) 2010-12-06 2014-11-11 Echostar Technologies L.L.C. Providing location information using matrix code
US20120151293A1 (en) * 2010-12-09 2012-06-14 Echostar Technologies L.L.C. Sequenced Two-Dimensional Codes in Video
US8875173B2 (en) 2010-12-10 2014-10-28 Echostar Technologies L.L.C. Mining of advertisement viewer information using matrix code
US8640956B2 (en) 2010-12-17 2014-02-04 Echostar Technologies L.L.C. Accessing content via a matrix code
US9596500B2 (en) 2010-12-17 2017-03-14 Echostar Technologies L.L.C. Accessing content via a matrix code
US9148686B2 (en) 2010-12-20 2015-09-29 Echostar Technologies, Llc Matrix code-based user interface
US8856853B2 (en) 2010-12-29 2014-10-07 Echostar Technologies L.L.C. Network media device with code recognition
US8408466B2 (en) 2011-01-04 2013-04-02 Echostar Technologies L.L.C. Assisting matrix code capture by signaling matrix code readers
US8292166B2 (en) 2011-01-07 2012-10-23 Echostar Technologies L.L.C. Performing social networking functions using matrix codes
US8534540B2 (en) 2011-01-14 2013-09-17 Echostar Technologies L.L.C. 3-D matrix barcode presentation
JP5750897B2 (ja) * 2011-01-14 2015-07-22 富士ゼロックス株式会社 電子筆記具及びプログラム
US8786410B2 (en) 2011-01-20 2014-07-22 Echostar Technologies L.L.C. Configuring remote control devices utilizing matrix codes
US8553146B2 (en) 2011-01-26 2013-10-08 Echostar Technologies L.L.C. Visually imperceptible matrix codes utilizing interlacing
US8468610B2 (en) 2011-01-27 2013-06-18 Echostar Technologies L.L.C. Determining fraudulent use of electronic devices utilizing matrix codes
US8430302B2 (en) 2011-02-03 2013-04-30 Echostar Technologies L.L.C. Enabling interactive activities for content utilizing matrix codes
US9571888B2 (en) 2011-02-15 2017-02-14 Echostar Technologies L.L.C. Selection graphics overlay of matrix code
US8511540B2 (en) 2011-02-18 2013-08-20 Echostar Technologies L.L.C. Matrix code for use in verification of data card swap
US8931031B2 (en) 2011-02-24 2015-01-06 Echostar Technologies L.L.C. Matrix code-based accessibility
US9367669B2 (en) 2011-02-25 2016-06-14 Echostar Technologies L.L.C. Content source identification using matrix barcode
US8550334B2 (en) 2011-02-28 2013-10-08 Echostar Technologies L.L.C. Synching one or more matrix codes to content related to a multimedia presentation
US8833640B2 (en) 2011-02-28 2014-09-16 Echostar Technologies L.L.C. Utilizing matrix codes during installation of components of a distribution system
US9736469B2 (en) 2011-02-28 2017-08-15 Echostar Technologies L.L.C. Set top box health and configuration
US8443407B2 (en) 2011-02-28 2013-05-14 Echostar Technologies L.L.C. Facilitating placeshifting using matrix code
EP2525281B1 (en) 2011-05-20 2019-01-02 EchoStar Technologies L.L.C. Improved progress bar
US8596523B2 (en) * 2011-07-28 2013-12-03 Intellectual Ventures Fund 83 Llc Index print with machine-readable codes
US9111186B2 (en) 2011-10-12 2015-08-18 University Of Rochester Color barcodes for mobile applications: a per channel framework
CA2845498C (en) * 2011-10-19 2015-02-03 Knova Web Technologies Inc. Method for automatically tagging documents with matrix barcodes and providing access to a plurality of said document versions
US9262660B2 (en) * 2011-11-07 2016-02-16 Honeywell Scanning & Mobility Optical indicia reading terminal with color image sensor
KR102059359B1 (ko) * 2012-11-13 2019-12-26 삼성전자주식회사 디스플레이 장치, 디스플레이 장치의 동작 방법 및 제조 방법
KR101427715B1 (ko) * 2012-12-31 2014-08-07 아주대학교산학협력단 큐알 코드 인식 장치 및 방법
KR20140108749A (ko) * 2013-02-27 2014-09-15 한국전자통신연구원 프라이버시 보호형 문서 인증 정보 생성 장치 및 이를 이용한 프라이버시 보호형 문서 인증 방법
KR102209729B1 (ko) * 2014-04-04 2021-01-29 삼성전자주식회사 인식 영역에 기반하여 콘텐트를 검출하는 전자 장치 및 방법
US10284877B2 (en) * 2015-01-16 2019-05-07 Hewlett Packard Enterprise Development Lp Video encoder
KR101587501B1 (ko) * 2015-07-17 2016-01-22 주식회사 디지마크 식별 코드 이미지를 이용한 객체 진위 여부 확인 방법 및 이를 실행하는 장치
US10331928B2 (en) 2015-11-06 2019-06-25 International Business Machines Corporation Low-computation barcode detector for egocentric product recognition
NL2016099B1 (en) * 2016-01-14 2017-07-24 Opticon Sensors Europe B V Method and device for detecting an inventory in a storage space.
KR101997048B1 (ko) * 2017-04-17 2019-07-05 엔피씨(주) 물류 관리를 위한 원거리 다수의 코드 인식 방법 및 이를 이용한 코드 인식 장치
US11126808B1 (en) * 2019-05-30 2021-09-21 Owens-Brockway Glass Container Inc. Methods for dot code image processing on a glass container
JP7304420B2 (ja) * 2019-09-02 2023-07-06 富士通フロンテック株式会社 印刷システム、印刷制御方法、情報処理装置及び印刷制御プログラム
CN114729878A (zh) 2019-11-01 2022-07-08 康宁股份有限公司 具有改善的强度过渡位置检测及倾斜补偿的棱镜耦合系统及方法
KR102166301B1 (ko) * 2019-11-29 2020-10-15 서동환 객체 인식 방법 및 장치
CN111191480B (zh) * 2019-12-30 2023-08-29 广东旭龙物联科技股份有限公司 一种基于一阶差分的包络线搜索条码边界的方法及装置
CN111222356A (zh) * 2020-01-14 2020-06-02 河北省烟草公司沧州市公司 图像识别方法、扫码方法、扫码终端和商品销售管理系统
CN111241862B (zh) * 2020-01-21 2023-06-02 西安邮电大学 基于边缘特性的条形码定位方法
DE102020130929A1 (de) 2020-07-31 2022-02-03 Technische Universität Dortmund Verfahren und Vorrichtung zur Auswertung von Matrixcodes
US11734531B2 (en) 2020-10-20 2023-08-22 Hand Held Products, Inc. Methods and systems of harvesting data for training machine learning (ML) model
TWI796822B (zh) * 2021-11-03 2023-03-21 宏碁股份有限公司 圖像顯示處理方法及圖像顯示處理系統

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1079320A (zh) * 1992-05-26 1993-12-08 欧林巴斯光学工业股份有限公司 符号信息读取装置
US6173893B1 (en) * 1997-04-16 2001-01-16 Intermec Corporation Fast finding algorithm for two-dimensional symbologies
US20040080650A1 (en) * 2002-10-21 2004-04-29 Jyn-Guo Hwang CMOS image sensor single chip integrated with a RF transmitter
US6941026B1 (en) * 2000-06-13 2005-09-06 Cognex Corporation Method and apparatus using intensity gradients for visual identification of 2D matrix symbols

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4958064A (en) 1989-01-30 1990-09-18 Image Recognition Equipment Corporation Bar code locator for video scanner/reader system
US5120940A (en) 1990-08-10 1992-06-09 The Boeing Company Detection of barcodes in binary images with arbitrary orientation
US5821523A (en) 1992-03-12 1998-10-13 Bunte; Alan G. Combined code reader and digital camera using a common photodetector
US5698833A (en) 1996-04-15 1997-12-16 United Parcel Service Of America, Inc. Omnidirectional barcode locator
US6366696B1 (en) 1996-12-20 2002-04-02 Ncr Corporation Visual bar code recognition method
JPH11306344A (ja) * 1998-04-16 1999-11-05 Fuji Photo Film Co Ltd 画像処理方法および装置
US6585159B1 (en) 1999-11-02 2003-07-01 Welch Allyn Data Collection, Inc. Indicia sensor system for optical reader
US6488304B2 (en) * 2000-08-18 2002-12-03 Magline, Inc. Rapidly demountable multiple platform utility cart assembly and methods of making and operating it
US7490774B2 (en) 2003-11-13 2009-02-17 Metrologic Instruments, Inc. Hand-supportable imaging based bar code symbol reader employing automatic light exposure measurement and illumination control subsystem integrated therein
US6832729B1 (en) 2001-03-23 2004-12-21 Zih Corp. Portable data collection device for reading fluorescent indicia
US7058233B2 (en) 2001-05-30 2006-06-06 Mitutoyo Corporation Systems and methods for constructing an image having an extended depth of field
JP2003032541A (ja) 2001-07-17 2003-01-31 Canon Inc 画像処理装置及びシステム
JP2003110832A (ja) 2001-09-27 2003-04-11 Fuji Photo Film Co Ltd 画像合成方法および装置並びにプログラム
JP4163406B2 (ja) * 2001-09-28 2008-10-08 シャープ株式会社 バーコード認識装置
SE0103286L (sv) 2001-10-03 2003-04-04 Anoto Ab Optisk sensoranordning och förfarande för att reglera dess exponeringstid
US6708884B1 (en) 2002-06-25 2004-03-23 The United States Of America As Represented By The Secretary Of The Army Method and apparatus for rapid and precision detection of omnidirectional postnet barcode location
JP4301775B2 (ja) 2002-07-18 2009-07-22 シャープ株式会社 2次元コード読み取り装置,2次元コード読み取り方法,2次元コード読み取りプログラム及び該プログラムの記録媒体
US7156311B2 (en) 2003-07-16 2007-01-02 Scanbuy, Inc. System and method for decoding and analyzing barcodes using a mobile device
US7328847B1 (en) 2003-07-30 2008-02-12 Hewlett-Packard Development Company, L.P. Barcode data communication methods, barcode embedding methods, and barcode systems
US20050203854A1 (en) 2004-02-23 2005-09-15 Pitney Bowes Incorporated Method and system for using a camera cell phone in transactions
FI20040858A (fi) 2004-06-18 2005-12-19 Valtion Teknillinen Menetelmä koodin tunnistamiseksi matkaviestimen avulla ja matkaviestin
US7273177B2 (en) 2005-03-10 2007-09-25 Microsoft Corporation Camera-based barcode recognition
US7172124B2 (en) 2005-03-10 2007-02-06 Microsoft Corporation Camera-based barcode recognition
US7780089B2 (en) 2005-06-03 2010-08-24 Hand Held Products, Inc. Digital picture taking optical reader having hybrid monochrome and color image sensor array
US7475823B2 (en) 2006-05-26 2009-01-13 Symbol Technologies, Inc. Hand held bar code reader with improved image capture
US7784696B2 (en) 2006-06-09 2010-08-31 Hand Held Products, Inc. Indicia reading apparatus having image sensing and processing circuit
US7780084B2 (en) 2007-06-29 2010-08-24 Microsoft Corporation 2-D barcode recognition
US8596541B2 (en) 2008-02-22 2013-12-03 Qualcomm Incorporated Image capture device with integrated barcode scanning

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1079320A (zh) * 1992-05-26 1993-12-08 欧林巴斯光学工业股份有限公司 符号信息读取装置
US6173893B1 (en) * 1997-04-16 2001-01-16 Intermec Corporation Fast finding algorithm for two-dimensional symbologies
US6941026B1 (en) * 2000-06-13 2005-09-06 Cognex Corporation Method and apparatus using intensity gradients for visual identification of 2D matrix symbols
US20040080650A1 (en) * 2002-10-21 2004-04-29 Jyn-Guo Hwang CMOS image sensor single chip integrated with a RF transmitter

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107679437A (zh) * 2017-09-26 2018-02-09 四川元匠科技有限公司 基于Zbar的条形码图像识别算法
CN107875638A (zh) * 2017-11-24 2018-04-06 宁波隆翔环保科技有限公司 一种游戏小汽车
CN108108646A (zh) * 2017-12-29 2018-06-01 Tcl王牌电器(惠州)有限公司 条码信息识别方法、终端和计算机可读存储介质
CN108108646B (zh) * 2017-12-29 2022-04-22 Tcl王牌电器(惠州)有限公司 条码信息识别方法、终端和计算机可读存储介质
CN111797645A (zh) * 2020-07-08 2020-10-20 北京京东振世信息技术有限公司 用于识别条形码的方法和装置

Also Published As

Publication number Publication date
JP5265709B2 (ja) 2013-08-14
KR101169872B1 (ko) 2012-07-31
KR20100123739A (ko) 2010-11-24
EP2093696B1 (en) 2017-07-12
US8366004B2 (en) 2013-02-05
JP2011518363A (ja) 2011-06-23
WO2009105731A1 (en) 2009-08-27
EP2093696A1 (en) 2009-08-26
TW200943191A (en) 2009-10-16
US20090212112A1 (en) 2009-08-27
CN101911095B (zh) 2014-04-23

Similar Documents

Publication Publication Date Title
CN101911095B (zh) 基于形态运算的条形码检测
CN101911094B (zh) 具有集成的条形码扫描的图像俘获装置
US8079525B1 (en) System and method for decoding barcodes captured with a color image sensor
US7946491B2 (en) Method, apparatus, and computer program product for providing a camera barcode reader
JP5318122B2 (ja) バーコードに含まれている情報を読み出す方法及び装置
US7764835B2 (en) Method and apparatus for recognizing code
KR101860569B1 (ko) 문자 및 바코드를 동시에 인식하는 문자 및 바코드 인식 장치 및 그 제어 방법
WO2017157034A1 (zh) 一种二维码的识别方法及装置、存储介质
CA2764196A1 (en) System and method for decoding barcodes captured with a color image sensor
US9330291B2 (en) Method and device for parsing images
JP4863346B2 (ja) カラー画像重畳バーコード生成方法および装置
JP2008083843A (ja) コード読取装置及びプログラム
CN101903893A (zh) 使用内核融合的数字信号模式检测和分类
JP5217872B2 (ja) シンボル読取装置及びプログラム
JP2004110670A (ja) 情報コード読取装置
JP5482925B2 (ja) 画像撮像装置及びプログラム
JP2011197856A (ja) 光学的情報読取装置
US8260053B2 (en) Device and method for virtualizing an image sensor
JP2005295313A (ja) コード読取装置、電子機器、パラメータの調整方法及びパラメータ調整プログラム
JP3971347B2 (ja) 光学的情報読み取り方法
US20090206159A1 (en) Device and Method for Locating a Barcode Using Image Analysis
CA2757804C (en) System and method for barcode scanning with color image sensors
JP2005168040A (ja) 情報端末装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140423