CN110914870B - 图像网络的注释生成 - Google Patents

图像网络的注释生成 Download PDF

Info

Publication number
CN110914870B
CN110914870B CN201880044344.9A CN201880044344A CN110914870B CN 110914870 B CN110914870 B CN 110914870B CN 201880044344 A CN201880044344 A CN 201880044344A CN 110914870 B CN110914870 B CN 110914870B
Authority
CN
China
Prior art keywords
image
annotation
key
images
locations
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.)
Active
Application number
CN201880044344.9A
Other languages
English (en)
Other versions
CN110914870A (zh
Inventor
J.S.施波克
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of CN110914870A publication Critical patent/CN110914870A/zh
Application granted granted Critical
Publication of CN110914870B publication Critical patent/CN110914870B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/5866Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, manually generated location and time information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20072Graph-based image processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)

Abstract

提供了用于在图像中生成注释的方法、系统和设备,其可以包括接收包括与位置相关联的图像的图像数据。图像可以包括关键图像,该关键图像包括位于一个或多个关键图像中的一个或多个关键注释位置处的一个或多个关键注释。可以部分基于与图像相关联的多个位置的一个或多个空间关系来选择至少一个图像和满足一个或多个注释标准的一对关键图像。可以部分基于满足一个或多个注释标准的一对关键图像中的一个或多个关键注释的一个或多个关键注释位置来确定图像中注释的注释位置。可以在图像的注释位置处生成注释。

Description

图像网络的注释生成
相关申请
本申请基于2017年8月10日提交的美国临时专利申请第62/543,848号并要求其权益,该申请通过引用结合于此。
技术领域
本公开总体上涉及为显示在计算设备上的图像生成注释。
背景技术
地理信息系统可以捕获各种数据,包括与地理位置相关联的图像。图像可以用于各种应用,包括处理特定地理位置的图像的地图绘制(mapping)应用。地图绘制应用的用户可以手动关联各种标签和其他标记来标识图像。然而,标签或标记与图像的手动关联可能是费力的,并且容易出错。此外,当应用于大型数据集时,由于时间限制,标签与图像的手动关联可能不可行。然而,图像数据的数量和复杂性不断增加,对地图中所描绘区域的更全面信息的需求也在增加。因此,需要一种方法来更有效地处理、操纵和修改图像,从而增强用户体验。
发明内容
本公开的实施例的方面和优点将在以下描述中部分阐述,或者可以从描述中获知,或者可以通过实施例的实践而获知。
本公开的一个示例方面涉及一种用于在图像中生成注释的方法。该方法可以包括由包括一个或多个计算设备的计算系统接收包括与多个位置相关联的多个图像的图像数据。多个图像可以包括关键图像,该关键图像包括位于一个或多个关键图像中的一个或多个关键注释位置处的一个或多个关键注释。该方法可以包括由计算系统部分基于与多个图像相关联的多个位置的一个或多个空间关系来选择至少一个图像和满足一个或多个注释标准的一对关键图像。该方法可以包括由计算系统部分基于满足一个或多个注释标准的一对关键图像中的一个或多个关键注释的一个或多个关键注释位置来确定至少一个图像中的注释的注释位置。该方法还可以包括由一个或多个计算设备在至少一个图像的注释位置处生成注释。
本公开的另一个示例方面涉及一个或多个有形的非暂时性计算机可读介质,其存储计算机可读指令,当该指令由一个或多个处理器执行时,使得一个或多个处理器执行操作。操作可以包括接收包括与多个位置相关联的多个图像的图像数据。多个图像可以包括关键图像,该关键图像包括位于一个或多个关键图像中的一个或多个关键注释位置处的一个或多个关键注释。操作可以包括部分基于与多个图像相关联的多个位置的一个或多个空间关系来选择至少一个图像和满足一个或多个注释标准的一对关键图像。操作可以包括部分基于满足一个或多个注释标准的一对关键图像中的一个或多个关键注释的一个或多个关键注释位置来确定至少一个图像中的注释的注释位置。操作还可以包括在至少一个图像的注释位置处生成注释。
本公开的另一个示例方面涉及一种计算系统,该计算系统包括一个或多个处理器,以及存储指令的一个或多个非暂时性计算机可读介质,当该指令由一个或多个处理器执行时,使得一个或多个处理器执行操作。操作可以包括接收包括与多个位置相关联的多个图像的图像数据。多个图像可以包括关键图像,该关键图像包括位于一个或多个关键图像中的一个或多个关键注释位置处的一个或多个关键注释。操作可以包括部分基于与多个图像相关联的多个位置的一个或多个空间关系来选择至少一个图像和满足一个或多个注释标准的一对关键图像。操作可以包括部分基于满足一个或多个注释标准的一对关键图像中的一个或多个关键注释的一个或多个关键注释位置来确定至少一个图像中的注释的注释位置。操作还可以包括在至少一个图像的注释位置处生成注释。
本公开的其他示例方面涉及用于生成可以在显示设备上显示的图像的注释的其他计算机实施的方法、系统、装置、有形的非暂时性计算机可读介质、用户界面、存储器设备和电子设备。
参考以下描述和所附权利要求,各种实施例的这些和其他特征、方面和优点将变得更好理解。结合在本说明书中并构成其一部分的附图示出了本公开的实施例,并且与描述一起用于解释相关原理。
附图说明
在参考附图的说明书中阐述了针对本领域普通技术人员的实施例的详细讨论,其中:
图1描绘了根据本公开的示例实施例的示例系统的图;
图2描绘了根据本公开的示例实施例的示例设备的图;
图3描绘了根据本公开的示例实施例在不同位置生成注释位置的示例;
图4描绘了根据本公开的示例实施例生成图像网络的核线图(epipolar graph)的示例;
图5描绘了根据本公开的示例实施例生成图像网络的核线图的示例;
图6描绘了根据本公开的示例实施例在位置的多个入口生成注释的示例;
图7描绘了根据本公开的示例实施例生成图像网络的具有间断(discontinuity)的核线图的示例;
图8描绘了根据本公开的示例实施例为图像网络生成沃罗诺伊(Voronoi graph)图的示例;
图9描绘了根据本公开的示例实施例的包括用于问题报告的对话框的用户界面的示例;
图10描绘了根据本公开的示例实施例的注释序列的交互式编辑的示例;
图11描绘了根据本公开的示例实施例的基于图像特征提取的注释生成的示例;
图12描绘了根据本公开的示例实施例的图像网络的注释生成的示例方法的流程图;
图13描绘了根据本公开的示例实施例的图像网络的注释位置和间断确定的示例方法的流程图;
图14描绘了根据本公开的示例实施例的修改图像网络中的注释的流程图;和
图15描绘了根据本公开的示例实施例的生成图像网络的图形和区域图表示的流程图。
具体实施方式
本公开的示例方面涉及为一个或多个图像(例如,包括一个或多个图像的图像网络中的全景图像)生成一个或多个注释(例如,感兴趣点的图形指示符或标识符)。所公开的技术可以接收包括图像数据的数据,该数据包括多个图像(例如,包括道路、街道和/或建筑物的位置的图像)或与之相关联;选择图像和可以用于生成新注释的一对关键图像;部分基于这对关键图像的位置来确定新注释的注释位置;以及在注释位置生成新注释。如此以来,所公开的技术可以通过减少在图像内的相关位置(例如,在与注释相关联的特征附近)手动放置注释的需要,来更有效地在图像中生成注释。具体地,所公开的技术可以通过使用现有注释的几何形状来确定新注释的定位,而有助于更有效地生成新注释。此外,所公开的技术可以通过检测图像的一个或多个特征来更快速地生成关键注释。
举例来说,所公开的技术可以包括从远程图像数据源接收图像数据的计算设备(例如,存储全景图像储存库的服务器计算设备)。图像数据可以包括全景图像网络(即全景网络),该全景图像网络包括与对应的多个位置(例如,多个图像中的每一个的纬度和经度)相关联的多个图像(例如,街道的图像序列)。多个图像中的一些可以包括指示包括地标、商业、学校、交通枢纽和/或政府办公室的感兴趣的地方的注释(例如,关键注释)。计算设备可以选择没有注释并且满足与包括注释的图像的预定空间关系的图像。没有注释的图像可以通过与相邻于具有注释的图像的位置相关联来满足预定空间关系。例如,对应于十条主要街道、二十条主要街道和三十条主要街道的连续图像可以包括在十条主要街道和三十条主要街道处的注释(例如,手动创建的注释)。所公开的技术可以基于在十条主要街道和三十条主要街道处的注释的位置来生成二十条主要街道的注释。所公开的技术可以生成具有注释的图像的核线(epipolar line)。基于核线会聚的点,可以生成对应于三维点的核点(epipole)。然后,可以在先前没有注释的图像(例如,二十条主要街道)中生成注释。这样,所公开的技术可以在图像中生成注释,而不需要手动干预(例如,手动放置注释)。
所公开的技术可以包括计算系统(例如,图像计算系统),该计算系统包括一个或多个计算设备(例如,具有一个或多个计算机处理器和可以存储一个或多个指令的存储器的设备),该计算设备可以交换(发送或接收)、处理、生成或修改信号或数据,包括与包括远程计算设备的各种计算设备交换的信号或数据,该远程计算设备可以提供与一个或多个图像、与一个或多个图像相关联的位置、或与一个或多个图像中的注释相关联的注释数据相关联的数据,或提供包括一个或多个图像、与一个或多个图像相关联的位置、或与一个或多个图像中的注释相关联的注释数据的数据。
图像计算系统可以接收包括与多个位置(例如,纬度和经度或街道地址)相关联的多个图像(例如,位置的二维表示)的图像数据。例如,该多个图像可以包括表示图像(例如,二维图像)的一个或多个数字图像。该多个图像可以包括光栅图像(例如,包括像素网格的位图)或矢量图像(例如,基于包括二维平面的x轴和y轴的坐标位置的图像的多边形表示)的任意组合。可以包括在多个图像中的数字图像格式的示例包括JPEG(JointPhotographic Experts Group,联合图像专家组)、BMP(Bitmap,位图)、TIFF(Tagged ImageFile Format,标记图像文件格式)、PNG(portable Network Graphic,便携式网络图形)或GIF(Graphics Interchange Format,图形交换格式)。
多个图像可以包括关键图像(例如,具有一个或多个注释、可以用于确定其他图像的注释位置的图像),该关键图像包括位于一个或多个关键图像中的一个或多个关键注释位置(例如,指示注释在图像内的定位的坐标组)处的一个或多个关键注释(例如,指示感兴趣的地方的图片或文本的组合)。例如,街道的图像可以包括在图像内描绘的餐馆的注释。注释的位置可以由与在图像内注释的中心相对应的x和y坐标组来指示。
在实施方式中,图像计算系统可以确定核线之间的会聚距离(例如,与各个图像相对应的不同核线上的点之间的距离)。响应于会聚距离满足一个或多个会聚标准(例如,该距离大于阈值会聚距离,或者核线发散)的确定,可以确定已经发生间断。间断可以由图像(例如,关键图像)集合形成,这些图像不能一起用于确定注释在另一图像(例如,没有注释的图像)集合中的定位。一个或多个注释标准可以部分基于间断没有发生。例如,当图像计算系统选择包括一对关键图像和要添加注释的图像的图像集合时,该图像集合中的间断的存在可以用于将该特殊图像集合(例如,该特定图像组合)排除在注释生成之外。
图像计算系统可以检测一个或多个视觉特征,包括形状、颜色(例如,色度)、亮度(例如,照度)和/或其他图像属性(例如,脊、边、角、曲线或斑点)。例如,与注释位置相关联的一个或多个视觉特征可以包括建筑物入口、建筑物标牌或建筑物地址标记。图像计算系统可以部分基于一个或多个视觉特征的位置来确定一个或多个关键注释的一个或多个关键注释位置。例如,图像计算系统可以检测图像中的餐馆徽标(即建筑物标牌),并确定关键注释将位于餐馆徽标的正上方。这样,一个或多个关键注释可以由图像计算系统来检测,而不必依赖于手动选择的关键注释位置。
图像计算系统可以部分基于与多个图像相关联的多个位置的一个或多个空间关系来选择至少一个图像和满足一个或多个注释标准的一对关键图像。一个或多个空间关系可以包括与图像相关联的多个位置之间的一个或多个距离、朝向、相对定位或邻接关系。例如,一个或多个注释标准可以包括要求与这对关键图像相对应的多个位置的集合在与图像(即将为其生成新注释的图像)相关联的位置的最小距离内的标准。一个或多个注释标准的其他示例包括最大距离要求(例如,多个位置的集合不能比最大距离更远);朝向要求(例如,要求这些位置面向相同的方向或者具有朝向相同方向的正面);相对定位要求(例如,要求位置相对于彼此具有特定定位);和/或邻接要求(例如,要求位置彼此相邻)。
图像计算系统可以部分基于满足一个或多个注释标准的一对关键图像中的一个或多个关键注释的一个或多个关键注释位置来确定图像中注释的注释位置。基于满足一个或多个注释标准,可以确定图像中注释的可用位置范围。
在实施方式中,可以基于为这对关键图像确定的核线来确定注释的注释位置。确定注释位置可以包括确定与这对关键图像的一个或多个关键注释相关联的核线的各方面。核线的方面包括核线的起点、终点、角度或轨迹。核线的位置可以部分基于这对关键图像的光学中心(例如,捕获图像的相机的焦点)。
响应于核线会聚,图像计算系统可以确定这对关键图像的核点。核点(例如,核线点)是核线会聚的点。核点可以对应于与将为其生成注释的图像相关联的地理位置中的三维点。注释位置可以部分基于核点的位置。例如,核点可以用作一对关键图像的单个参考点。使用核点的位置,可以为这对关键图像之间的中间图像确定注释的位置。
图像计算系统可以在图像的注释位置处生成注释。例如,图像计算系统可以发送一个或多个指令来修改与图像相关联的图像数据。对与图像相关联的图像数据的修改可以包括生成附加图像(例如,在注释位置中具有注释的图像),将注释添加到现有图像,或者移除现有图像中的注释,以及在图像中生成新注释。此外,在注释位置生成的注释可以被输出到显示设备(例如,LCD(liquid crystal display,液晶显示)监视器)。
图像计算系统可以生成部分基于多个图像的图形。该图形可以用于表示与多个图像相关联的多个位置的相对定位。例如,图形可以包括表示多个图像的顶点和表示多个图像中最接近的可贯穿(traversable)图像的边缘。与顶点处的图像最接近的可贯穿图像可以但不一定与另一图像相关联,该另一图像与最接近与顶点处的图像相关联的位置的位置相关联。例如,对应于与建筑物的第一入口的位置相关联的图像的第一节点可以与对应于与街道同一侧的第二入口的位置相关联的图像的第二节点相邻,该第二节点比对应于与街道另一侧的第三入口的位置相关联的图像的第三节点更远。
在另一个实施方式中,图形可以包括对应于多个图像的多个节点(例如,图形的每个节点可以表示多个图像之一)。多个节点的位置(例如,相对位置)可以部分基于与多个图像相关联的多个位置。一个或多个注释标准中的至少一个部分基于与一对关键图像相对应的一对节点与与图像相对应的节点相邻。
此外,图像计算系统可以生成图形或多个图像中的节点的表示,其包括与多个位置相关联的多个区域。多个区域中的每一个可以与节点相关联,并且可以被一个或多个分区(partition)分开,这些分区部分基于多个位置的集合之间的距离。一个或多个空间关系可以部分基于多个区域的形状或大小。此外,一个或多个分区的形状和大小可以基于应用于每个节点的权重。这样,例如,可以生成Voronoi类型图来表示与图形中的节点相关联的多个图像。
在一些实施方式中,多个区域的生成可以包括向多个区域添加附加区域。附加区域可以对应于添加到多个图像的附加图像。附加区域的位置(例如,多个区域内的附加区域的位置)可以部分基于与附加图像相关联的位置。图像计算系统可以部分基于附加位置相对于多个位置的位置来修改一个或多个分区的位置。例如,将附加区域引入多个区域可以包括当附加区域与多个区域中的至少一个相邻时创建新分区。
图像计算系统可以接收包括图像中注释的位置的注释更新数据。例如,注释更新数据可以包括图像内位置的坐标(例如,x和y坐标)组。注释更新数据可以从各种设备接收,包括远程计算系统(例如,维持和提供注释更新数据的远程服务器计算设备)和/或包括人类输入设备(例如,键盘、鼠标、触摸屏和/或麦克风)的输入设备。部分基于注释数据,可以修改注释位置。例如,用户可以使用作为图像计算设备的一部分的应用,该应用允许创建、修改或移除图像中的一个或多个注释。用户可以将图像的视觉表示输出到显示设备上,并通过应用的用户界面创建注释。这样,所公开的技术可以便于用户手动调整注释。
所公开技术中的系统、方法、设备和非暂时性计算机可读介质可以为图像中注释的整体生成提供各种技术效果和益处。通过自动执行注释的生成,所公开的技术可以减少或消除手动选择图像内的位置来放置注释的需要。在仍然使用手动选择的情况下,所公开的技术可以通过基于向其手动添加注释的较少数量的关键图像生成注释来减少人工干预的量。此外,在较少数量的图像中放置注释可以用于在较大的图像集中生成注释。
所公开技术的一些实施方式可以通过使用具有关键注释的关键图像中的核线的有效计算以确定没有注释或者具有将被重新定位或移除的注释的图像的位置来最大化计算资源的使用。此外,所公开的技术改进了注释到相同位置的新图像的传递。这样,可以减少冗余工作(例如,为每个新图像集生成新注释)。
此外,使用所公开的技术生成的注释可以对应于三维位置。因此,注释可以被投影到不同类型的图像上,包括增强现实图像和虚拟现实图像。
因此,所公开的技术为各种图像类型提供了更有效的注释生成,以及由生成注释的更少资源使用以及在新图像或应用中现有注释的更大重用而带来的益处。
现在将详细参考实施例,其一个或多个示例在附图中示出。每个示例都是通过对实施例的解释来提供的,而不是对本公开的限制。事实上,对于本领域技术人员来说显而易见的是,在不脱离本公开的范围或精神的情况下,可以对实施例进行各种修改和变化。例如,作为一个实施例的一部分示出或描述的特征可以与另一个实施例一起使用,以产生又一个实施例。因此,本公开的各方面意图覆盖这样的修改和变化。
现在参考图1-图15,将更详细地公开本公开的示例方面。图1描绘了根据本公开的示例实施例的用于处理注释的示例系统100的概述。系统100可以包括用户设备102;图像数据提供者104;通信网络106;注释应用110(例如,软件应用);图像引擎114;和地理信息系统120。
用户设备102可以经由通信网络106从图像数据提供者104接收导航数据。可以在用户设备102上操作或运行的注释应用110可以经由网络106与图像引擎114交互。网络106可以包括任何类型的通信网络,诸如局域网(例如,内联网)、广域网(例如,互联网)、蜂窝网络或它们的某些组合。网络106还可以包括直接连接。一般地,通信可以经由网络106使用任何类型的有线和/或无线连接、使用各种通信协议(例如,TCP(Transmission ControlProtocol,传输控制协议)/IP(Internet Protocol,互联网协议)、HTTP(Hyper TextTransfer Protocol,超文本标记语言)、SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)、FTP(File Transfer Protocol,文件传输协议))、编码或格式(例如,HTML(Hypertext Markup Language,超文本标记语言)或XML(Extensible Markup Language,可扩展标记语言))和/或保护方案(例如,VPN(Virtual Private Network,虚拟专用网)、安全HTTP或SSL(Secure Sockets Layer,安全套接层))来进行。
用户设备102可以包括一个或多个计算设备,该计算设备包括平板计算设备、可穿戴设备(例如,智能手表或智能带)、膝上型计算设备、台式计算设备、移动计算设备(例如,智能手机)、可穿戴计算设备和/或具有一个或多个处理器的显示设备。
注释应用110可以在用户设备102上实施。注释应用110可以对用户实施模型数据和/或图像数据的成像服务。模型数据可以基于多个图像的状态和与多个图像相关联的数据,该数据包括图像内注释的位置和与多个图像相关联的位置。注释应用110可以通过经由在用户设备102上实施的网络浏览器访问的网络应用,或者通过在用户设备102上的本地运行或操作和在远程计算设备上的远程运行或操作的组合,在用户设备102上本地操作或运行,该远程计算设备可以包括图像数据提供者104或地理信息系统120。
注释应用110可以被配置为生成、处理或修改可以由用户使用的、包括图像数据(例如,图像文件)或导航数据(例如,与图像数据相关联的感兴趣的地方的位置)的数据。在一些实施方式中,注释应用110可以包括用于在一个或多个显示设备上向用户呈现导航信息的图形用户界面组件。
图像引擎114可以被配置为例如接收图像数据、从用户设备接收输入以修改图像数据的部分、确定未注释图像内注释的位置、和/或响应来自注释应用110的对模型数据或图像数据的请求。
在一些实施例中,图像数据提供者104可以包括一个或多个计算设备,该计算设备包括服务器(例如,网络服务器)。一个或多个计算设备可以包括一个或多个处理器和一个或多个存储器设备。一个或多个存储器设备可以存储计算机可读指令,以实施例如图像引擎114。在一些实施例中,图像引擎114可以访问例如与地理信息系统118相关联的数据。
地理信息系统118可以与根据其组成元素(例如,位置)的地理坐标(例如,纬度和经度)来索引的数据相关联或包括该数据。与地理信息系统118相关联的数据可以包括地图数据、图像数据、地理图像和/或与各种航路点相关联的数据(例如,地址或地理坐标)。由图像数据提供者104确定或生成的模型数据或图像数据可以经由应用编程接口提供给注释应用110,该应用编程接口包括用于图像服务的扩展(例如,用于与位置相关联的图像交互或修改该图像的用户界面的扩展)。在一些实施方式中,注释应用110可以在注释应用110的用户界面内呈现图像数据。
图2描绘了根据本公开的示例实施例的被配置为实施注释组件的示例用户设备202。如图所示,用户设备202可以包括:存储器204;可以包括一个或多个指令并且可以存储在存储器204上的应用组件212;被配置为执行存储在存储器204中的一个或多个指令的一个或多个处理器220;能够支持网络通信的网络接口222;存储设备224(例如,硬盘驱动器或固态驱动器);和/或显示设备226。一个或多个处理器220可以包括任何处理设备,其可以例如处理和/或交换(发送或接收)与计算设备相关联的一个或多个信号或数据。
例如,一个或多个处理器220可以包括单核或多核设备,其包括微处理器、微控制器、集成电路和/或逻辑设备。存储器204和存储存储器224被分离地示出,然而,组件204和224可以是同一存储器模块内的区域。用户设备202可以包括一个或多个附加处理器、存储器设备、网络接口,它们可以单独提供或者在同一芯片或板上提供。组件204和224可以包括一个或多个计算机可读介质,包括但不限于非暂时性计算机可读介质、RAM、ROM、硬盘驱动器、闪存驱动器和/或其他存储器设备。
存储器204可以存储包括可以与各种软件应用或数据相关联的操作系统的应用的指令集。存储器204可以用于操作包括专门为移动设备开发的移动操作系统的各种应用。如此以来,存储器204可以执行允许软件应用访问包括无线网络参数(例如,无线网络的身份、服务质量)的数据的功能,并且调用包括电话、位置确定(例如,经由全球定位服务(GlobalPosition System,GPS)或WLAN(Wireless Local Area Network,无线局域网))和/或无线网络数据呼叫发起服务的各种服务。在其他实施方式中,存储器204可以用于操作或运行通用操作系统,该通用操作系统在移动和固定设备两者上操作,诸如智能手机和台式计算机。在一些示例实施方式中,操作系统包括或基于由谷歌公司开发的
Figure GDA0003121257800000111
移动操作系统或实施Android操作平台的其他操作系统。
可以由用户设备202操作或运行的软件应用可以包括图1所示的注释应用110。此外,可以由用户设备202操作或运行的软件应用可以包括本地应用或基于网络的应用。
在一些实施方式中,用户设备可以与定位系统(未示出)相关联或包括该定位系统。定位系统可以包括用于确定设备的定位的一个或多个设备或电路。例如,定位设备可以通过使用卫星导航定位系统(例如,GPS系统、伽利略定位系统、全球导航卫星系统(GLObalNavigation satellite system,GLONASS)、北斗卫星导航和定位系统)、惯性导航系统、航位推算系统,基于IP地址,通过使用三角测量和/或到蜂窝塔或无线热点、信标等的接近度,和/或用于确定定位的其他合适技术来确定实际或相对定位。定位系统可以确定用户设备的用户位置。用户位置可以被提供给图像数据提供者104,以由导航数据提供者在确定与用户设备102相关联的旅行数据时使用。
图3描绘了根据本公开的示例实施例的在不同位置对注释位置进行建模的示例。图3包括包含图形用户界面组件310的计算系统300的图示。图形用户界面组件310可以显示在计算系统的显示设备(例如,用户设备102的显示设备)上。图形用户界面组件310可以包括各种界面元素,这些界面元素可以作为可以显示与地理数据相关联的图像的图像查看系统的一部分用于访问、生成、处理或向用户呈现(例如,显示)包括该地理数据的数据。如图3所示,图形用户界面组件310包括显示部分312/314;和注释316/318。
显示部分312和显示部分314可以从不同的视角显示由图像获取设备(例如,相机)捕获的环境的图像(即与显示部分312和显示部分314相关联的图像从不同的距离和角度显示环境)。显示部分312描绘了由图像获取设备捕获的城市环境中的建筑物。与显示部分312相关联的建筑物由注释316标识为感兴趣的地方。例如,注释316可以指示显示部分312包括查看者可能感兴趣的商业位置(例如,银行)的表示。
显示部分314包括表示从不同视角捕获的与显示部分312中描绘的建筑物相同的建筑物的建筑物图像。与显示部分314相关联的建筑物被注释318标识为感兴趣的地方。注释316的定位相对于地面处于升高的定位,这从显示部分312中示出的远程视角是可见的。在显示部分314中,注释318相对于地面处于较低的定位,这从显示部分314中所示的更近范围的视角是可见的。如图3所示,所公开的技术可以修改与相同位置中的相同感兴趣的地方相关联的注释的位置,使得其在不同图像中从多个视角可见。
图4描绘了根据本公开的示例实施例的生成图像网络的核线图的示例。图4包括可以生成与多个图像相关联的图形402的计算系统400的图示。存储在计算系统400上的一个或多个指令可以在包括例如用户设备102、图像数据提供者104和/或计算设备202的一个或多个计算设备或计算系统上执行或实施。此外,存储在计算系统400上的一个或多个指令可以作为算法在本文公开的设备的硬件组件上执行或实施。如图所示,图形402可以包括图像节点410/412/414;核线420/422/424;和核点430/434。
图形402包括图像节点410/412/414,其与对应于在其处捕获多个图像中的每一个的多个位置的多个图像(例如,可贯穿全景图像或全景网络)相关联。图像节点410/412/414被表示为具有边缘的图形402的顶点,该边缘可以表示与其他节点(即图形402的顶点)相关联的多个图像中最接近的可贯穿图像。
在一些实施方式中,可以从特定图像的视角生成注释(例如,与对应于图像中描绘的位置的感兴趣区域相关联的标记或标识符)。具有可以用于插值或确定其他注释的定位的注释定位的图像可以被称为关键图像。
关键图像(例如,与图像节点410相关联的关键图像)中的注释定位可以被建模为核线。对应于三维点的核点可以在多个核线会聚或相交的位置处被确定(例如,计算或算计)(例如,在核线420和核线422会聚的点处的核点430)。
对于跨多个图像被键入(keyed)的注释,可以为每个连续的关键图像对确定核点。在实施方式中,核点的确定可以限于不连续的关键图像对(例如,对应于不连续的图像节点的关键图像对)。例如,对于图像节点410和412,核点是核点430;并且对于图像节点412和图像节点414,核点是核点434,然而,图像节点410和图像节点414不是连续的(例如,顶点不相邻),因此当施加对图像节点是连续的限制时,不会为图像节点410和图像节点414确定核点。
图5描绘了根据本公开的示例实施例的生成图像网络的核线图的示例。图5包括可以生成与多个图像相关联的图形502的计算系统500的图示。存储在计算系统500上的一个或多个指令可以在包括例如用户设备102、图像数据提供者104和/或计算设备202的一个或多个计算设备或计算系统上执行或实施。此外,存储在计算系统500上的一个或多个指令可以作为算法在本文公开的设备的硬件组件上执行或实施。如图所示,图形502可以包括节点512;关键图像节点514;节点516;关键图像节点518;节点520;节点522;关键图像节点524;节点526;关键图像节点530;节点532;节点534;和关键图像节点536。
图形502表示包括点或节点并且基于与多个位置相关联的多个图像的分支一维图像网络。计算系统500确定(例如,基于图像数据计算)沿着一维图像网络的某个点(例如,注释定位节点)的三维注释定位。可以基于相邻关键图像之间的相邻中点(例如,相邻关键图像之间的点,包括比另一相邻关键图像更靠近相邻关键图像之一的点)来确定三维注释定位。
在实施方式中,当点(沿着一维图像网络的点)落在一对关键图像中点之外时,注释定位(对应于注释定位节点)是最接近的核点。例如,注释定位节点512落在中点对之外,相应地,注释定位是在关键图像节点514和关键图像节点518之间(例如,中间)的节点516。
在替代实施方式中,当注释定位落在连续中点的中点之间时,注释定位被计算为核点之间的插值。例如,节点520落在包括节点516和节点522的中点之间。因此,节点520的注释定位基于节点516的定位和从节点516到节点522的网络距离。网络距离可以在节点522处归一化为1,并且在节点518处归一化为0.5。
当沿着网络的点的一侧分支时,注释定位可以基于到网络的任一分支之间的关键图像节点的最短距离。例如,在到节点530和节点536的分支之间,节点536最接近节点524,并且可以使用节点522和节点532处的相邻中点来确定节点526处的注释定位。节点534落在中程(midrange)间隔之外,因此最接近的核点可以在节点532处。
图6描绘了根据本公开的示例实施例的在位置的多个入口生成注释的示例。图6包括可以生成图形界面组件602的计算系统600的图示,该图形界面组件602可以生成多个图像。显示输出可以基于存储在计算系统上的一个或多个指令,该指令可以在包括例如用户设备102、图像数据提供者104和/或计算设备202的一个或多个计算设备或计算系统上执行或实施。如图所示,图形界面组件602可以生成图像610/612/614/616;注释620/622/624/626;和建筑物630。
图像610描绘了包括与注释620相关联的建筑物630元素(“间断鱼市场(Discontinuity Fish Market)”)的位置的俯视图。建筑物630描绘了具有多个入口的长结构,并且可以与单个注释620相关联,以在从俯视描绘时将建筑物630表示为单个感兴趣点。
图像612/614/616描绘了从不同有利位置(例如,图像被捕获的位置)捕获的建筑物630的地面级图像。如图所示,每个图像612/614/616包括分别与注释622/624/626相关联的入口。因为与注释622/624/626相关联的入口可以在建筑物630的不同侧(即不同的位置),所以在图形中引入间断(discontinuity)(即包括节点集合的空间上不同的区域)可以避免在关键图像(例如,图像612/614/616)之间插入中间注释定位。
因此,当关键图像与与其邻居(例如,与注释622/624/626相关联的不同入口)不同(即不满足图像网络图形中被视为相邻节点的一个或多个标准)的位置相关联时,可以在插值图中对间断进行建模。
图7描绘了根据本公开的示例实施例的生成图像网络的具有间断的核线图的示例。图7包括根据本公开的示例实施例的可以生成与多个图像相关联的图形702的计算系统700的图示。图形702可以基于存储在计算系统上的一个或多个指令,该指令可以在包括例如用户设备102、图像数据提供者104和/或计算设备202的一个或多个计算设备或计算系统上执行或实施。如图所示,图形702可以包括图像节点710/712/714;图像节点720/722/724;间断730;间断732;核线740/742/744;和核线750/752/754。
图像节点710/712/714分别与核线740/742/744相关联。如图所示,当核不在图像平面中会聚(即核线发散)时,相关联的图像节点可以被建模为不同的点,这由将图像节点714与图形702中与图像节点720相邻的图像节点714分开的间断730示出。
当核线会聚时,以核点距离的间断(例如,超过核点距离阈值的核点距离)可以指示图像关键模型是不同的(即不连续的)点。例如,核线742和核线754将会聚在远离核线740和核线742的会聚点(即核点)以及核线742和核线744的会聚点的点(即核点)。
在一种实施方式中,沿着与间断相关联的图像节点的点可以被插值,使得注释定位是最接近的核点的定位。
图8描绘了根据本公开的示例实施例的生成图像网络的Voronoi图的示例。图8包括根据本公开的示例实施例的计算系统800的图示,可以通过计算系统生成与多个图像相关联的图形820。存储在计算系统800上的一个或多个指令可以在包括例如用户设备102、图像数据提供者104和/或计算设备202的一个或多个计算设备或计算系统上执行或实施。此外,存储在计算系统800上的一个或多个指令可以作为算法在本文公开的设备的硬件组件上执行或实施。如图所示,图形820可以包括节点802/804/806/808/810/812;地区(region)822/824/826/828/830/832;间断840;和间断842。
在实施方式中,包括节点802/804/806/808/810/812的关键点可以分别与关键点周围的、包括地区822/824/826/828/830/832的区域(area)和地区相关联。与关键点相关联的区域和地区可以表示为图形,其中区域或地区基于关键点被分区。例如,这些地区或区域可以表示为Voronoi图。
可以通过插值(例如,自然邻点插值)来确定与关键点相关联的区域或地区。沿着图像网络(例如,图像序列)边缘的点可以保留先前边缘受限插值的邻点权重,但间断除外,其可以被加权为零(“0”)。
例如,节点806周围的地区826中的点的自然邻点插值可以具有来自节点808和节点812的贡献。插值网络可以指示地区828和地区832与节点806不连续,因此它们的贡献被加权为零(“0”)。在替代实施方式中,来自不连续地区的贡献可以是对插值贡献最小的非零值。
图9描绘了根据本公开的示例实施例的包括用于问题报告的对话框的用户界面的示例。图9包括根据本公开的示例实施例的可以生成图形用户界面组件910的计算系统900的图示。图形用户界面组件910可以显示在计算系统的显示设备(例如,用户设备102的显示设备)上。图形用户界面组件910可以包括各种界面元素,这些界面元素可以作为可以显示与地理数据相关联的图像的图像查看系统的一部分用于访问、生成、处理或向用户呈现(例如,显示)包括地理数据的数据。如图9所示,图形用户界面组件910包括控制元素912(“注释没有正确放置在地图上”)。
图形用户界面组件910可以包括各种元素来访问信息或数据或输入信息或数据到计算系统900。例如,控制元素912可以接收用户反馈,以指示注释没有被正确安置或定位(例如,注释没有位于与注释相关联的位置的阈值距离内)。
在实施方式中,用户可以修改或编辑正在显示的图像(例如,全景图像)中的注释的位置。例如,用户可以在接收到编辑注释的位置的授权后,重新定位注释以更适当地标识与注释相关联的感兴趣的地方。
图10描绘了根据本公开的示例实施例的注释序列的交互式编辑的示例。图10示出了在时间间隔序列内使用图形用户界面组件1000的交互式编辑。图形用户界面组件1000可以显示在计算系统的显示设备(例如,用户设备102的显示设备)上。图形用户界面组件1000可以包括各种界面元素,这些界面元素可以作为可以显示与地理数据相关联的图像的图像查看系统的一部分用于访问、生成、处理或向用户呈现(例如,显示)包括地理数据的数据。
图形用户界面组件1000在连续时间间隔上示出,包括时间间隔1010(第一时间间隔)、时间间隔1012(第二时间间隔)、时间间隔1014(第三时间间隔)、时间间隔1016(第四时间间隔)、时间间隔1018(第五间隔)、图像显示部分1020(在第一时间间隔)、图像显示部分1022(在第二时间间隔)、图像显示部分1024(在第三时间间隔)、图像显示部分1026(在第四时间间隔)、图像显示部分1028(在第五时间间隔)、地图显示部分1030(在第一时间间隔)、地图显示部分1032(在第二时间间隔)、地图显示部分1034(在第三时间间隔)、地图显示部分1036(在第四时间间隔)、地图显示部分1038(在第五时间间隔)、注释1040(在第一时间间隔)、注释1042(在第二时间间隔)、注释1044(在第三时间间隔)、注释1046(在第四时间间隔)、注释1048(在第五时间间隔)、和间断1050。
图形用户界面组件1000可以经由用户可以执行的各种输入来控制或交互,以操纵显示在图形用户界面组件1000上的各种元素。例如,注释(例如,注释1040)可以经由定点设备(例如,鼠标或触笔)从图像显示部分1020内的一个位置拖动到图像显示部分1020内的不同位置。此外,使用图形用户界面组件1000的触摸界面(例如,包括智能手机或平板计算设备的移动计算设备的触摸屏),用户可以在图像显示部分(例如,图像显示部分1020)中显示的图像周围进行平移,使得屏幕的中心与注释对齐。因此,当在与图形用户界面组件1000的显示部分中显示的图像相对应而显示的图像中进行调整时,基于用户修改的注释定位,更新插值网络的多个图像中的对应图像以包括新的关键图像。在实施方式中,可以实时执行注释的注释定位的改变。
在时间间隔1010处,位于图像显示部分1020的右边缘附近的注释1040被标识为处于不正确的位置。正确的位置更靠近图像显示部分1020的左边缘。地图显示部分1030指示与图像显示部分1020相关联的位置的俯视图。
在1012处,在时间间隔1010处的用户交互(例如,选择注释1040并将其拖动到图像显示部分1020内的正确位置)之后,注释1042被显示在图像显示部分1022的左边缘附近的更新位置。图形用户界面组件1000可以与相关联的计算系统交换数据,以指示注释1042和与注释1042相关联的核线的更新位置。
在1014处,对图像显示部分1014中的注释1044的位置进行另一编辑,该图像显示部分1014示出了与时间间隔1010和时间间隔1012处所示的位置不同的位置的图像。地图显示部分1034示出了另一关键图像的分界。通过这样做,解决了第一次编辑的深度模糊性。
在1016处,对图像显示部分1016中的注释1046的位置进行另一编辑,该图像显示部分1016从不同的视角示出了时间间隔1010/1012中所示位置的图像。地图显示部分1036示出核线不会聚(或将会聚在显著不同的距离)。因此,生成间断1050来指示注释定位将不被插值在时间间隔1014和时间间隔1016中所示的位置之间。
在1018处,对图像显示部分1018中的注释1048的位置进行另一编辑,该图像显示部分1018示出了与在前时间间隔1010/1012/1014/1016中示出的位置不同的位置的图像。地图显示部分1038示出核线与相邻位置的核线会聚,因此,生成注释1048。
图11描绘了根据本公开的示例实施例的基于图像特征提取的注释生成的示例。图11包括包括图形用户界面组件1110的计算系统1100的图示。图形用户界面组件1110可以显示在计算系统的显示设备(例如,用户设备102的显示设备)上。图形用户界面组件1110可以包括各种界面元素,这些界面元素可以作为可以显示与地理数据相关联的图像的图像查看系统的一部分用于访问、生成、处理或向用户呈现(例如,显示)包括地理数据的数据。如图11所示,图形用户界面组件1110包括指示1112(“这是Acme面包店吗?”)、注释1114、控制元素1116(“是”)、和控制元素1118(“否”)。
在实施方式中,可以确定(例如,使用机器学习技术推断)图像的特征,该图像包括在图形用户界面组件1110中显示的图像,并且可以基于所确定的图像的特征在图像内的位置生成注释。例如,注释可以位于被确定为图像的特征的标牌或门口附近。
在图形用户界面组件1110中,生成指示1112以请求(request)注释1114是否与正确的位置(即Acme面包店)相关联。基于对控制元素1116(例如,是,注释被正确安置)或控制元素1118(例如,否,注释没有被正确安置)的输入,注释1114可以被保持或从图形用户界面组件1110中显示的图像中移除。
图12描绘了根据本公开的示例实施例的图像网络的注释生成的示例方法的流程图。方法1200的一个或多个部分可以在包括例如用户设备102、图像数据提供者104和/或计算设备202的一个或多个计算设备或计算系统上执行或实施。方法1200的一个或多个部分也可以作为算法在本文公开的设备的硬件组件上执行或实施。为了说明和讨论的目的,图12描绘了以特定顺序执行的步骤。使用本文提供的公开内容,本领域普通技术人员将理解,在不脱离本公开内容的范围的情况下,本文公开的任何方法的各个步骤可以被适应性改变、修改、重新排列、省略和/或扩展。
在1202处,方法1200可以包括接收图像数据,该图像数据包括可以与多个位置(例如,分别位于不同纬度和经度或街道地址的地方)相关联的多个图像(例如,位置的二维表示)。例如,该多个图像可以包括表示特定地址的街道位置的图像(例如,二维图像)的一个或多个数字图像,其中对于街道位置的不同相机视角具有不同的图像。多个图像可以包括任何类型的图像格式,包括光栅图像(例如,包括像素网格的位图)或矢量图像(例如,基于包括二维平面的x轴和y轴的坐标位置的图像的多边形表示)的组合。可以包括在多个图像中的数字图像格式的示例包括JPEG(联合图像专家组)、BMP(位图)、TIFF(标记图像文件格式)、PNG(便携式网络图形)或GIF(图形交换格式)。
多个图像可以包括关键图像(例如,与一个或多个注释相关联的、可以用于确定其他图像的注释位置的图像),该关键图像包括位于一个或多个关键图像中的一个或多个关键注释位置(例如,指示注释在图像内的定位的坐标组)处的一个或多个关键注释(例如,指示图像内感兴趣的地方的图片或文本的组合)。例如,街道的图像可以包括图像内描绘的商业地点(例如,银行)的注释。注释的位置可以由对应于图像内注释的一部分(例如,表示注释的位图图像的左上角)的x和y坐标组来指示。
在1204处,方法1200可以包括部分基于一个或多个关键图像标准来确定一个或多个关键图像,该关键图像标准包括多个位置的集合之间的最小距离或多个位置的集合之间的最大距离。例如,多个位置的集合之间的距离可以基于与多个位置的图像相对应的图形(例如,插值图)中的一对节点之间的中间节点的数量。
在1206处,方法1200可以包括检测多个图像中的一个或多个视觉特征,该视觉特征包括多个图像中的一个或多个图像的形状、颜色(例如,色度)、亮度(例如,照度)和/或其他图像属性(例如,脊、边、角、曲线或斑点)。例如,与注释位置相关联的一个或多个视觉特征可以包括建筑物入口、建筑物标牌或建筑物地址标记。所公开的技术可以使用例如图像分类(例如,无监督图像分类)来检测一个或多个视觉特征。
在1208处,方法1200可以包括部分基于一个或多个视觉特征的位置来确定一个或多个关键注释的一个或多个关键注释位置。例如,图像计算系统可以检测对应于图像中银行位置的地址(即指示银行地址的地址标牌),并确定关键注释将位于该地址正上方。
在1210处,方法1200可以包括部分基于与多个图像相关联的多个位置的一个或多个空间关系来选择至少一个图像和满足一个或多个注释标准的一对(即两个)关键图像。一个或多个空间关系可以包括与图像相关联的多个位置之间的一个或多个距离、朝向、相对定位或邻接关系。例如,一个或多个注释标准可以包括要求与这对关键图像相对应的多个位置的集合在与图像(即将为其生成新注释的图像)相关联的位置的最小距离(例如,基于多个位置的插值图中的最小中间节点数)内的标准。一个或多个注释标准的其他示例包括最大距离要求(例如,多个位置的集合不能比基于多个位置的插值图中的最大中间节点数更远);朝向要求(例如,要求位置面向相同的方向);相对定位要求(例如,要求位置相对于彼此具有特定定位,包括插值图中的节点位于关键图像节点的同一侧);和/或邻接要求(例如,要求位置彼此相邻,包括插值图中的相邻节点)。
在1212处,方法1200可以包括部分基于满足一个或多个注释标准的一对关键图像中的一个或多个关键注释的一个或多个关键注释位置来确定图像中的注释的注释位置。例如,注释位置可以部分基于对一个或多个关键注释位置的分析,该分析包括确定一个或多个关键注释的几何特征是否满足一个或多个标准,该标准包括基于一个或多个关键注释位置的核线的会聚。基于满足一个或多个注释标准(例如,在阈值距离内会聚的核线),可以确定图像中的注释的可用位置范围。
在1214处,方法1200可以包括在图像的注释位置处生成注释。例如,图像计算系统可以向管理(例如,存储、接收、发送和/或修改)多个图像的远程计算设备发送一个或多个指令,以修改与图像相关联的图像数据。对与图像相关联的图像数据的修改可以包括生成附加图像(例如,表示注释位置中的注释的图标)、将注释添加到现有图像、或者移除现有图像中的注释并在图像中生成新注释。此外,在注释位置生成的注释可以被输出到显示设备(例如,移动设备上的显示器)。
图13描绘了根据本公开的示例实施例的图像网络的注释位置和间断确定的示例方法的流程图。方法1300的一个或多个部分可以在包括例如用户设备102、图像数据提供者104和/或计算设备202的一个或多个计算设备或计算系统上执行或实施。方法1300的一个或多个部分也可以作为算法在本文公开的设备的硬件组件上执行或实施。为了说明和讨论的目的,图13描绘了以特定顺序执行的步骤。使用本文提供的公开内容,本领域普通技术人员将理解,在不脱离本公开内容的范围的情况下,本文公开的任何方法的各个步骤可以被适应性改变、修改、重新排列、省略和/或扩展。
在1302处,方法1300可以包括基于与一对关键图像的一个或多个关键注释相关联的一个或多个核线来确定注释位置。核线的位置可以部分基于这对关键图像的光学中心(例如,捕获图像的设备的焦点中心)。确定注释位置可以包括确定与这对关键图像的一个或多个关键注释相关联的核线的各方面。核线的方面可以包括核线的起点(从图像捕获设备的光学中心开始)、终点(在沿着核线的某点结束)或轨迹。
在1304处,方法1300可以包括确定核线之间的会聚距离(例如,核线会聚或相交的距离)。会聚距离可以部分基于核线的会聚点和包括核线之一的起点的参考点之间的距离来确定。
在1306处,响应于核线满足一个或多个会聚标准,方法1300前进到1310。响应于核线不满足一个或多个会聚标准,方法1300前进到1308。一个或多个会聚标准可以包括会聚距离满足阈值会聚距离(例如,超过、等于或小于阈值会聚距离)或者核线不会聚(例如,核线发散)。例如,平行核线将不会聚,并且因此不满足一个或多个会聚标准。在实施方式中,一个或多个会聚标准可以被结合到一个或多个注释标准中。
在1308处,方法1300可以响应于会聚距离不满足一个或多个会聚标准(例如,该距离大于阈值会聚距离,或者核线发散)的确定,可以确定已经发生间断。间断可能由不能一起用于确定注释在另一图像(例如,没有注释的图像)集合中的位置的图像(例如,关键图像)集合引起。
在1310处,方法1300可以包括确定这对关键图像的核点。核点(例如,核线点)是核线会聚的点。核点可以对应于与将为其生成注释的图像相关联的地理位置中的三维点。注释位置可以部分基于核点的位置。例如,核点可以用作确定核线的一对关键图像的单个参考点。使用核点的位置,可以为这对关键图像之间的中间图像(例如,插值中位于两个关键图像节点之间的节点)确定注释的位置。
图14描绘了根据本公开的示例实施例的在图像网络中修改注释的流程图。方法1400的一个或多个部分可以在包括例如用户设备102、图像数据提供者104和/或计算设备202的一个或多个计算设备或计算系统上执行或实施。方法1400的一个或多个部分也可以作为算法在本文公开的设备的硬件组件上执行或实施。为了说明和讨论的目的,图14描绘了以特定顺序执行的步骤。使用本文提供的公开内容,本领域普通技术人员将理解,在不脱离本公开内容的范围的情况下,本文公开的任何方法的各个步骤可以被适应性改变、修改、重新排列、省略和/或扩展。
在1402处,方法1400可以包括接收注释更新数据,该数据包括图像中注释的位置。例如,注释更新数据可以包括图像内将生成注释的位置的坐标(例如,x和y坐标)组。注释更新数据可以从各种设备接收,包括远程计算系统(例如,维持和提供注释更新数据的远程服务器计算设备)和/或包括人类输入设备(例如,键盘、鼠标、触摸屏和/或麦克风)的输入设备。此外,注释更新数据可以包括图像内现有注释的位置。当修改注释位置时,可以使用图像内现有注释的位置(例如,可以移除现有注释,并且可以在图像中生成新注释)。
在1404处,方法1400可以包括部分基于注释数据来修改注释位置。用户可以在显示设备上查看图像的视觉表示,并经由应用的用户界面修改注释(例如,用户可以与图形用户界面组件的控件交互以执行对注释的修改)。例如,用户可以使用允许生成(例如,在图像中创建注释)、修改(例如,改变注释的外观或位置)或移除图像中的一个或多个注释的图像修改应用。
图15描绘了根据本公开的示例实施例的生成图像网络的图形和区域图表示的流程图。方法1500的一个或多个部分可以在包括例如用户设备102、图像数据提供者104和/或计算设备202的一个或多个计算设备或计算系统上执行或实施。方法1500的一个或多个部分也可以作为算法在本文公开的设备的硬件组件上执行或实施。为了说明和讨论的目的,图15描绘了以特定顺序执行的步骤。使用本文提供的公开内容,本领域普通技术人员将理解,在不脱离本公开内容的范围的情况下,本文公开的任何方法的各个步骤可以被适应性改变、修改、重新排列、省略和/或扩展。
在1502处,方法1500可以包括生成部分基于多个图像的图形。该图形可以用于表示与多个图像相关联的多个位置的相对定位。例如,图形可以包括表示多个图像的顶点和表示多个图像中最接近的可贯穿图像的边缘。与顶点处的图像最接近的可贯穿图像可以但不一定与另一图像相关联,该另一图像与最接近与顶点处的图像相关联的位置的位置相关联。
在另一个实施方式中,图形可以包括对应于多个图像或与多个图像相关联的多个节点(例如,图形的每个节点可以表示多个图像之一)。多个节点的位置(例如,相对位置)可以部分基于与多个图像相关联的多个位置。一个或多个注释标准中的至少一个可以部分基于对应于一对关键图像或与一对关键图像相关联的一对节点与对应于图像的节点相邻。
在1504处,方法1500可以包括部分基于图形(例如,在1502中生成的图形)生成图形中的节点的表示或者包括与多个位置相关联的多个区域的多个图像。多个区域中的每一个可以与节点相关联,并且可以被一个或多个分区分开,该分区部分基于多个位置的集合之间的距离。一个或多个空间关系可以部分基于多个区域的形状或大小。此外,一个或多个分区的形状和大小可以基于应用于每个节点的加权。这样,例如,可以生成Voronoi类型图来表示与图形中的节点相关联的多个图像。
在1506处,方法1500可以包括向多个区域添加附加区域。附加区域可以对应于添加到多个图像的附加图像。附加区域的位置(例如,多个区域内附加区域的位置)可以部分基于与附加图像相关联的位置。例如,可以将从不同视角(例如,不同相机角度或不同距离)显示位置的附加图像添加到多个图像中。
在1508处,方法1500可以包括部分基于附加位置,相对于多个位置的位置来修改一个或多个分区的位置。例如,将附加区域引入多个区域可以包括创建新的分区,以将附加区域与现有的多个区域分开。附加区域的一个或多个分区的位置可以部分基于多个图像相对于与位置相关联的、正被添加的图像的加权。此外,一个或多个分区的位置可以部分基于相邻区域之间存在的间断。
本文讨论的技术涉及服务器、数据库、软件应用和其他基于计算机的系统,以及所采取的动作和发送到这种系统和从这种系统接收的信息。本领域普通技术人员将认识到,基于计算机的系统的固有灵活性允许组件之间的任务和功能的各种可能的配置、组合和划分。例如,本文讨论的服务器进程可以使用单个服务器或组合工作的多个服务器来实施。数据库和应用可以在单个系统上实施,也可以分布在多个系统上。分布式组件可以顺序或并行运行。
虽然已经参考本发明的具体示例实施例详细描述了本发明,但是应当理解,本领域技术人员在理解了前述内容后,可以容易地对这些实施例进行改变、变化和等同。因此,本公开的范围是示例性的,而不是限制性的,并且本主题公开不排除包括对本主题的这种修改、变化和/或添加,这对本领域普通技术人员来说是显而易见的。

Claims (20)

1.一种在图像中生成注释的计算机实施的方法,所述方法包括:
由包括一个或多个计算设备的计算系统接收包括与多个位置相关联的多个图像的图像数据,其中所述多个图像包括关键图像,所述关键图像包括位于所述关键图像中的一个或多个关键注释位置处的一个或多个关键注释,并且其中所述一个或多个关键注释中的每一个包括与所述关键图像的各个关键图像相关联的文本;
由所述计算系统部分基于与所述多个图像相关联的多个位置的一个或多个空间关系,选择至少一个图像和满足一个或多个注释标准的一对关键图像;
由所述计算系统部分基于机器学习技术和满足一个或多个注释标准的所述一对关键图像中的一个或多个关键注释的一个或多个关键注释位置,确定所述至少一个图像中的注释的注释位置,其中所述机器学习技术包括检测所述至少一个图像中的一个或多个视觉特征;以及
由所述计算系统在所述至少一个图像的注释位置处生成注释。
2.根据权利要求1所述的计算机实施的方法,其中,所述一个或多个空间关系包括所述多个位置之间的一个或多个阈值距离范围或者所述多个位置中的每一个位置的邻接关系。
3.根据权利要求1所述的计算机实施的方法,其中,确定所述注释位置包括:
由所述计算系统确定与所述一对关键图像的一个或多个关键注释相关联的核线,其中所述核线的位置部分基于所述一对关键图像的光学中心;以及
响应于所述核线满足一个或多个会聚标准,由所述计算系统确定所述一对关键图像的核点,所述一个或多个会聚标准包括所述核线会聚,其中所述注释位置部分基于所述核点的位置。
4.根据权利要求3所述的计算机实施的方法,还包括:
由所述计算系统确定所述核线之间的会聚距离;以及
响应于确定所述会聚距离大于阈值会聚距离或者所述核线发散,由所述计算系统确定间断已经发生,其中所述一个或多个注释标准中的至少一个注释标准部分基于间断没有发生。
5.根据权利要求1所述的计算机实施的方法,还包括:
由所述计算系统部分基于一个或多个关键图像标准确定所述关键图像,所述一个或多个关键图像标准包括所述多个位置的集合之间的最小距离或所述多个位置的集合之间的最大距离。
6.根据权利要求1所述的计算机实施的方法,还包括:
由所述计算系统检测所述多个图像中的一个或多个视觉特征,其中所述一个或多个视觉特征包括建筑物入口、建筑物标牌或建筑物地址标记;以及
由所述计算系统部分基于所述一个或多个视觉特征的位置来确定所述一个或多个关键注释的一个或多个关键注释位置。
7.根据权利要求1所述的计算机实施的方法,还包括:
由所述计算系统部分基于所述多个图像生成图形,所述图形包括与所述多个图像相关联的多个节点,所述多个节点的位置部分基于与所述多个图像相关联的多个位置,其中所述一个或多个注释标准中的至少一个注释标准部分基于与所述一对关键图像相关联的一对节点与与所述至少一个图像相关联的节点相邻。
8.根据权利要求7所述的计算机实施的方法,还包括:
由所述计算系统部分基于所述图形,生成与所述多个节点相关联的多个区域,其中所述多个区域被部分基于所述多个节点之间的距离的一个或多个分区分开,其中所述一个或多个空间关系部分基于所述多个区域的形状、大小或相对定位。
9.根据权利要求8所述的计算机实施的方法,还包括:
由所述计算系统将附加区域添加到所述多个区域,其中所述附加区域对应于添加到所述多个图像的附加图像,所述附加区域的位置部分基于与所述附加图像相关联的附加位置;以及
由所述计算系统部分基于所述附加位置相对于所述多个位置的位置来修改所述一个或多个分区的位置。
10.根据权利要求1所述的计算机实施的方法,还包括:
由所述计算系统接收注释更新数据,所述注释更新数据包括所述至少一个图像中的注释的位置,其中所述注释更新数据从远程计算设备或输入设备的一个或多个输入接收;以及
由所述计算系统部分基于所述注释更新数据修改所述注释的注释位置。
11.一个或多个有形的非暂时性计算机可读介质,其存储计算机可读指令,所述计算机可读指令当由一个或多个处理器执行时,使得所述一个或多个处理器执行操作,所述操作包括:
接收包括与多个位置相关联的多个图像的图像数据,其中所述多个图像包括关键图像,所述关键图像包括位于所述关键图像中的一个或多个关键注释位置处的一个或多个关键注释,并且其中所述一个或多个关键注释中的每一个包括与所述关键图像的各个关键图像相关联的文本;
部分基于与所述多个图像相关联的多个位置的一个或多个空间关系,选择至少一个图像和满足一个或多个注释标准的一对关键图像;
部分基于机器学习技术和满足一个或多个注释标准的所述一对关键图像中的一个或多个关键注释的一个或多个关键注释位置来确定所述至少一个图像中的注释的注释位置,其中所述机器学习技术包括检测所述至少一个图像中的一个或多个视觉特征;以及
在所述至少一个图像的注释位置处生成注释。
12.根据权利要求11所述的一个或多个有形的非暂时性计算机可读介质,其中,所述一个或多个空间关系包括所述多个位置之间的一个或多个阈值距离范围或者所述多个位置中的每一个位置的邻接关系。
13.根据权利要求11所述的一个或多个有形的非暂时性计算机可读介质,其中,确定注释位置包括:
确定与所述一对关键图像的一个或多个关键注释相关联的核线,其中所述核线的位置部分基于所述一对关键图像的光学中心;以及
响应于所述核线满足一个或多个会聚标准,确定所述一对关键图像的核点,所述一个或多个会聚标准包括所述核线会聚,其中所述注释位置部分基于所述核点的位置。
14.根据权利要求13所述的一个或多个有形的非暂时性计算机可读介质,还包括:
确定所述核线之间的会聚距离;以及
响应于确定所述会聚距离大于阈值会聚距离或者所述核线发散,确定间断已经发生,其中所述一个或多个注释标准中的至少一个注释标准部分基于间断没有发生。
15.根据权利要求11所述的一个或多个有形的非暂时性计算机可读介质,还包括:
部分基于一个或多个关键图像标准确定所述关键图像,所述一个或多个关键图像标准包括所述多个位置的集合之间的最小距离或所述多个位置的集合之间的最大距离。
16.一种计算系统,包括:
一个或多个处理器;
存储指令的一个或多个非暂时性计算机可读介质,所述指令当由所述一个或多个处理器执行时,使得所述一个或多个处理器执行操作,所述操作包括:
接收包括与多个位置相关联的多个图像的图像数据,其中所述多个图像包括关键图像,所述关键图像包括位于所述关键图像中的一个或多个关键注释位置处的一个或多个关键注释,并且其中所述一个或多个关键注释中的每一个包括与所述关键图像的各个关键图像相关联的文本;
部分基于与所述多个图像相关联的多个位置的一个或多个空间关系,选择至少一个图像和满足一个或多个注释标准的一对关键图像;
部分基于机器学习技术和满足一个或多个注释标准的所述一对关键图像中的一个或多个关键注释的一个或多个关键注释位置来确定所述至少一个图像中的注释的注释位置,其中所述机器学习技术包括检测所述至少一个图像中的一个或多个视觉特征;以及
在所述至少一个图像的注释位置处生成注释。
17.根据权利要求16所述的计算系统,其中,所述一个或多个空间关系包括所述多个位置之间的一个或多个阈值距离范围或者所述多个位置中的每一个位置的邻接关系。
18.根据权利要求16所述的计算系统,其中,确定注释位置包括:
确定与所述一对关键图像的一个或多个关键注释相关联的核线,其中所述核线的位置部分基于所述一对关键图像的光学中心;以及
响应于所述核线满足一个或多个会聚标准,确定所述一对关键图像的核点,所述一个或多个会聚标准包括所述核线会聚,其中所述注释位置部分基于所述核点的位置。
19.根据权利要求18所述的计算系统,还包括:
确定所述核线之间的会聚距离;以及
响应于确定所述会聚距离大于阈值会聚距离或者所述核线发散,确定间断已经发生,其中所述一个或多个注释标准中的至少一个注释标准部分基于间断没有发生。
20.根据权利要求16所述的计算系统,还包括:
部分基于一个或多个关键图像标准确定所述关键图像,所述一个或多个关键图像标准包括所述多个位置的集合之间的最小距离或所述多个位置的集合之间的最大距离。
CN201880044344.9A 2017-08-10 2018-06-14 图像网络的注释生成 Active CN110914870B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762543848P 2017-08-10 2017-08-10
US62/543,848 2017-08-10
PCT/US2018/037523 WO2019032184A1 (en) 2017-08-10 2018-06-14 ANNOTATION GENERATION FOR IMAGE NETWORK

Publications (2)

Publication Number Publication Date
CN110914870A CN110914870A (zh) 2020-03-24
CN110914870B true CN110914870B (zh) 2021-11-23

Family

ID=62815191

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880044344.9A Active CN110914870B (zh) 2017-08-10 2018-06-14 图像网络的注释生成

Country Status (4)

Country Link
US (1) US10733777B2 (zh)
EP (1) EP3628081A1 (zh)
CN (1) CN110914870B (zh)
WO (1) WO2019032184A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD780777S1 (en) 2014-04-22 2017-03-07 Google Inc. Display screen with graphical user interface or portion thereof
US9934222B2 (en) 2014-04-22 2018-04-03 Google Llc Providing a thumbnail image that follows a main image
USD781317S1 (en) 2014-04-22 2017-03-14 Google Inc. Display screen with graphical user interface or portion thereof
US9972121B2 (en) * 2014-04-22 2018-05-15 Google Llc Selecting time-distributed panoramic images for display
US11157770B2 (en) * 2019-02-20 2021-10-26 Cheng Ning Jong Automatic line erase tool and method
CN111858799B (zh) * 2020-06-28 2022-10-21 江苏核电有限公司 一种核电厂用全景图像动态标注定位方法、系统及设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101918983A (zh) * 2008-01-15 2010-12-15 谷歌公司 街道视图数据的三维注释
US8447136B2 (en) * 2010-01-12 2013-05-21 Microsoft Corporation Viewing media in the context of street-level images

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8401771B2 (en) * 2008-07-22 2013-03-19 Microsoft Corporation Discovering points of interest from users map annotations
GB0915200D0 (en) 2009-09-01 2009-10-07 Ucl Business Plc Method for re-localising sites in images

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101918983A (zh) * 2008-01-15 2010-12-15 谷歌公司 街道视图数据的三维注释
US8447136B2 (en) * 2010-01-12 2013-05-21 Microsoft Corporation Viewing media in the context of street-level images

Also Published As

Publication number Publication date
US10733777B2 (en) 2020-08-04
WO2019032184A1 (en) 2019-02-14
EP3628081A1 (en) 2020-04-01
CN110914870A (zh) 2020-03-24
US20190051029A1 (en) 2019-02-14

Similar Documents

Publication Publication Date Title
CN110914870B (zh) 图像网络的注释生成
US20200092473A1 (en) Connecting And Using Building Data Acquired From Mobile Devices
CN106233371B (zh) 选择用于显示的时间分布的全景图像
JP2018163654A (ja) 電気通信インベントリ管理のためのシステムおよび方法
US9153011B2 (en) Movement based level of detail adjustments
US11134193B2 (en) Information processing system, information processing method, and non-transitory computer-readable storage medium
CN103971589A (zh) 将地图的兴趣点信息添加于街景图像中的处理方法及装置
US10198456B1 (en) Systems and methods for data accuracy in a positioning system database
US9245366B1 (en) Label placement for complex geographic polygons
JP6096634B2 (ja) 仮想現実を用いた3次元地図表示システム
US11454502B2 (en) Map feature identification using motion data and surfel data
US11402232B2 (en) Off-viewport location indications for digital mapping
US9483496B1 (en) Label placement for line features
CN114363161B (zh) 异常设备的定位方法、装置、设备及介质
US20220113156A1 (en) Method, apparatus and system for generating real scene map
CN113379748A (zh) 一种点云全景分割方法和装置
CN113378605A (zh) 多源信息融合方法及装置、电子设备和存储介质
Ahn et al. Integrating Image and Network‐Based Topological Data through Spatial Data Fusion for Indoor Location‐Based Services
Sharma et al. Navigation in AR based on digital replicas
JP2022501751A (ja) 3d幾何抽出のために画像の複数から相補的画像を選択するシステムおよび方法
US9852542B1 (en) Methods and apparatus related to georeferenced pose of 3D models
Hong et al. The use of CCTV in the emergency response: A 3D GIS perspective
CN113129406B (zh) 一种数据处理方法、装置及电子设备
US20160085427A1 (en) System and method of sharing spatial data
Wang et al. Bibliometric review of visual computing in the construction industry

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant