WO2023274205A1 - 一种poi的显示方法及设备 - Google Patents

一种poi的显示方法及设备 Download PDF

Info

Publication number
WO2023274205A1
WO2023274205A1 PCT/CN2022/101799 CN2022101799W WO2023274205A1 WO 2023274205 A1 WO2023274205 A1 WO 2023274205A1 CN 2022101799 W CN2022101799 W CN 2022101799W WO 2023274205 A1 WO2023274205 A1 WO 2023274205A1
Authority
WO
WIPO (PCT)
Prior art keywords
poi
terminal device
display information
scene
cross
Prior art date
Application number
PCT/CN2022/101799
Other languages
English (en)
French (fr)
Inventor
李威阳
闫国兴
唐忠伟
郑亚
冯艳妮
康一飞
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2023274205A1 publication Critical patent/WO2023274205A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts

Definitions

  • the present application relates to the field of electronic maps, in particular to a POI display method and device.
  • a point of interest is an important part of a navigation electronic map. It generally refers to a certain landmark, building, scenic spot, etc. on the electronic map.
  • Commercial institutions gas stations, department stores, supermarkets, restaurants, hotels, convenience stores, hospitals, etc.
  • tourist attractions parks, public toilets, etc.
  • historic sites transportation facilities (various stations, parking lots, speed cameras, speed limits marked) and other places.
  • augmented reality augmented reality
  • VR virtual reality
  • 3D scene the existing POI display methods in 3D scenes are mainly divided into two categories: 1) 2D tile POI, tile POI is to obtain the surrounding POI data in the current scene through the user's position, POI data includes position, name etc., the POI data will be associated with information such as buildings in the scene, and then the content of the POI will be presented on the device screen in a tiled manner.
  • the content of the POI includes information such as name and rating.
  • FIG. 1 FIG.
  • FIG. 1 is a schematic diagram of an application scenario of tiling POIs.
  • POI 3D tags are based on POI data in the vicinity of the user, using 3D content tags to integrate into the scene, and can be adjusted with the user's perspective.
  • FIG. 2 (a) sub-schematic diagram and (b) sub-schematic diagram in FIG. 2 are respectively schematic diagrams of application scenarios of POI three-dimensional tags.
  • the POI content is tiled on the screen range of the building, which is easy to cause occlusion with other content in the scene, and the POI is not strongly related to the entity such as the building to which it belongs; in the above-mentioned method 2, the POI
  • the content in the 3D label is in the form of a plane, which expresses the 3D POI information in a plane dimension.
  • the embodiment of the present application provides a POI display method and device for generating 3D display information based on POI corresponding data
  • the 3D display information includes at least one of 3D text, 3D icon, and 3D text background board, optimized It solves the problem that the existing POI content is not displayed three-dimensionally, and improves the user's sense of immersion when using it.
  • the 3D display information corresponding to the POI in the 3D scene, multiple 3D display information displayed at the same time may appear.
  • adjust the 3D display information corresponding to the blocked POIs to avoid ambiguity caused by the user seeing only part of the 3D display information when browsing.
  • the embodiment of the present application firstly provides a POI display method, which can be applied to the field of navigation electronic maps, specifically, it can be applied to the construction of three-dimensional scenes of AR/VR, and can also be applied to the construction of virtual three-dimensional scenes of games.
  • the method includes: first, the terminal device acquires the data corresponding to the first POI in the three-dimensional scene (such as the three-dimensional scene constructed at the current moment and the current position) (which may be referred to as the first data), and the first data includes the first POI at The 3D coordinates of the target in the constructed 3D scene and the identification of the first POI.
  • the first POI is any POI in the constructed 3D scene.
  • the terminal device includes There are 3 POIs, then the first POI refers to any one of these 3 POIs.
  • the terminal device After acquiring the first data corresponding to the first POI in the 3D scene, the terminal device will further generate corresponding 3D display information (which may be referred to as first 3D display information) according to the first data, wherein the first 3D display information It may include at least one of the 3D text corresponding to the logo, the 3D icon corresponding to the logo, and the background plate of the 3D text.
  • the display position of the first 3D display information in the three-dimensional scene is determined by The target three-dimensional coordinates of the first POI included in the first data are determined.
  • the terminal device After the terminal device generates the first 3D display information corresponding to the first POI, it will further generate a cross section of the first 3D display information (which may be referred to as a first cross section), and sample the first cross section to obtain At least one sampling point. After the terminal device samples the first cross-section to obtain at least one sampling point, it will further determine whether the connection line between the camera position of the terminal device and the sampling point passes through the second cross-section, wherein the second cross-section is a cross-section of the second 3D display information corresponding to the second POI, and the second POI is any other POI different from the first POI in the 3D scene.
  • a cross section of the first 3D display information which may be referred to as a first cross section
  • the terminal device After the terminal device samples the first cross-section to obtain at least one sampling point, it will further determine whether the connection line between the camera position of the terminal device and the sampling point passes through the second cross-section, wherein the second cross-section is a cross-section of the second
  • the terminal device needs to adjust the first 3D display information in the 3D scene.
  • the 3D display information is generated based on the data corresponding to the POI, and the 3D display information includes at least one of the 3D text, 3D icon, and 3D text background board, which optimizes the existing POI content that is not three-dimensional.
  • the problem is that the immersion of the user is improved, and, in the 3D scene, according to the occlusion relationship of the 3D display information corresponding to the POI (multiple 3D display information in the 3D scene are simultaneously displayed, one or more 3D display information may be blocked. occlusion) adjust the 3D display information corresponding to the occluded POI to avoid ambiguity caused by the user seeing only part of the 3D display information when browsing.
  • the process for the terminal device to generate the corresponding first 3D display information according to the first data may specifically be: first, the terminal device dynamically generates the 3D display information corresponding to the logo based on the 3D character library. Text, and generate the background plate of the 3D text according to the size of the 3D text.
  • the background plate of the 3D text refers to the background frame that can accommodate the 3D text.
  • the background frame can be a rectangular frame or a
  • the oval frame may also be a frame of any other shape, which is not limited in this application.
  • dynamic generation means that it can be generated anytime and anywhere according to needs, and is used to distinguish the 3D text built into the terminal device at the beginning.
  • the 3D text is not limited to the language type, and can be in Chinese, such as the name of a building hanging on a certain building, such as "xx school”, “xx hospital”, “xx shopping mall”, “xx “Park”, etc., can also be in English or other languages, such as "xx school”, “xx hospital”, etc., which is not limited in this application.
  • the terminal device will further generate a 3D icon corresponding to the logo according to the logo.
  • the 3D icon can be distinguished based on the service type. The icon is the symbol of "coffee cup", the 3D icon of the shopping place is the symbol of "shopping bag", etc.
  • the terminal device adjusts the relative positions of the generated 3D text, background board and 3D icon to obtain the first 3D display information.
  • the specific implementation manners in which the terminal device generates a 3D icon corresponding to the identifier according to the identifier include but are not limited to: a. If the first data includes the 3D icon constructed by the first POI In addition to the three-dimensional coordinates of the target in the scene and the identification of the first POI, the classification code is also included, then the terminal device will determine the classification code corresponding to the identification according to the identification, and according to the first mapping relationship between the classification code and the icon A 3D icon corresponding to the first POI is generated.
  • classification codes can be regarded as indexes of icons (the index rules have been defined in advance), and the corresponding icons can be directly accessed according to the classification codes, and then based on This icon generates a corresponding 3D icon.
  • an icon may contain multiple types of 3D text, that is, different 3D texts can belong to the same icon, for example, the 3D text corresponding to "A shopping mall” and "B shopping mall” are different, but both It belongs to a shopping place, so it can correspond to the same icon, and the generated 3D icons can all be 3D "shopping bag” symbols.
  • the terminal device can extract the key features of the logo, and according to the relationship between the key features and the icon
  • the second mapping relationship generates a 3D icon corresponding to the first POI.
  • This method is similar to the above method, the difference is that the role of classification coding is replaced by the extracted key features, and each type of key features also needs to have a one-to-one correspondence with the icon. For details, refer to the above method a, which will not be repeated here.
  • the manner in which the terminal device samples the first cross-section may be random sampling, and the number n (such as 3, 5, 8, etc.) of sampling points may also be Preset; it can also be sampled according to the preset rules, for example, how far apart to sample once, and how much area to sample once; it can also be to sample special points of the first cross section, for example, the corner points of the first cross section, The central point, etc., specifically, the present application does not limit how to obtain at least one sampling point by sampling.
  • a typical sampling method uses the four corner points of the first cross section as sampling points.
  • the terminal device in addition to judging whether the first 3D display information is blocked based on whether the connection line between the camera point and the sampling point passes through other cross sections, it may also be based on other methods Judging whether the first 3D display information is blocked, for example, by judging whether the four corners of the first cross-section are visible (that is, judging whether the line connecting any one of the four corners and the camera position has a penetration other cross-sections), specifically, if there is at least one connecting line between the camera position of the terminal device and the four sampled corner points passing through the second cross-section, the terminal device The line segment between the corner points and the target point on the line segment are used to calculate the occluded area of the first cross-section, and then the ratio of the occluded area to the total area of the first cross-section is judged. When the ratio of the cross-sectional areas reaches the preset threshold, it is considered that the first 3D display information is too much blocked, and the terminal device needs to adjust the first 3D display information in the
  • the manner in which the terminal device adjusts the first 3D display information includes but is not limited to: deleting the first 3D display information in the 3D scene; or, using the first 3D The display information is reduced according to a preset ratio; or, the display position of the first 3D display information is adjusted in a direction away from the display position of the second 3D display information.
  • the adjustment method may include but not limited to: a. Delete the first 3D display in the constructed 3D scene information. b.
  • the adjustment method may include but not limited to: a. Delete the first 3D display information in the constructed 3D scene . b.
  • the target 3D coordinates of the first POI in the 3D scene are positionally extended from the initial 3D coordinates of the first POI along the normal direction of the façade of the first POI It is obtained that the initial three-dimensional coordinates are three-dimensional coordinates corresponding to a set of pixel coordinates obtained by means of intersection or ray tracing, and the set of pixel coordinates is a set of pixel coordinates of the first POI in the picture obtained by OCR.
  • the initial three-dimensional coordinates obtained based on the forward intersection method or the ray tracing method are extended along the normal direction of the facade of the POI to obtain the target three-dimensional coordinates, so that the 3D display information and the constructed 3D scene can be avoided. Collisions between entities (eg, buildings) in the game improve the visual experience.
  • the 3D scene is constructed by the terminal device based on the acquired 3D data of the current location.
  • the specific construction process may be: first , the terminal device sends the current location of the terminal device and the orientation of the terminal device to the server corresponding to the terminal device (the orientation of the terminal device is used to represent the orientation of the user carrying the terminal device), and the server receives the terminal device After sending the current location and orientation, the current location and orientation will be compared and matched with the stored position and orientation. After matching the corresponding position and orientation, the 3D scene data corresponding to the position and orientation will be generated.
  • the terminal device After receiving the 3D scene data sent by the server, the terminal device can construct a 3D scene based on the 3D scene data at its current location and orientation. It should be noted that the 3D scene data is only used by the terminal device to construct the 3D scene.
  • the server needs to further obtain the data corresponding to each POI in the constructed 3D scene (which may be referred to as POI data ), as mentioned above, the first POI corresponds to the first data, and the terminal device will not only receive the current location and orientation sent by the server, but also receive the POI data corresponding to the three-dimensional scene data sent by the server, namely The first data.
  • the terminal device receives the 3D scene data (used to construct the 3D scene) and POI data corresponding to the current location and orientation from the server in real time, so as to avoid problems caused by storing too much data on the terminal device. Data redundancy.
  • a second aspect of the embodiments of the present application provides a terminal device, where the terminal device has a function of implementing the first aspect or the method of any possible implementation manner of the first aspect.
  • This function may be implemented by hardware, or may be implemented by executing corresponding software on the hardware.
  • the hardware or software includes one or more modules corresponding to the above functions.
  • the third aspect of the embodiment of the present application provides a terminal device, which may include a memory, a processor, and a bus system, wherein the memory is used to store a program, and the processor is used to call the program stored in the memory to execute the first aspect of the embodiment of the present application Or any one of the possible implementation methods of the first aspect.
  • the fourth aspect of the embodiment of the present application provides a computer-readable storage medium, the computer-readable storage medium stores instructions, and when it is run on a computer, the computer can execute any one of the above-mentioned first aspect or the first aspect. method of possible implementation.
  • the fifth aspect of the embodiments of the present application provides a computer program, which, when running on a computer, causes the computer to execute the method of the above-mentioned first aspect or any possible implementation manner of the first aspect.
  • the sixth aspect of the embodiment of the present application provides a chip, the chip includes at least one processor and at least one interface circuit, the interface circuit is coupled to the processor, the at least one interface circuit is used to perform the function of sending and receiving, and send instructions to At least one processor, at least one processor is used to run computer programs or instructions, which has the function of realizing the method of the above-mentioned first aspect or any possible implementation manner of the first aspect, and this function can be realized by hardware or by software Realization can also be achieved through a combination of hardware and software, where the hardware or software includes one or more modules corresponding to the above functions.
  • the interface circuit is used to communicate with other modules outside the chip.
  • Fig. 1 is a schematic diagram of an application scenario of tiling POI
  • Fig. 2 is a schematic diagram of an application scenario of POI three-dimensional tags
  • Fig. 3 is a schematic diagram of the system architecture provided by the embodiment of the present application.
  • FIG. 4 is a schematic flowchart of a POI display method in a three-dimensional scene provided by an embodiment of the present application
  • the (a) sub-schematic diagram in Fig. 5 is a schematic diagram of obtaining 3D POI by multi-chip forward intersection provided by the embodiment of the present application;
  • the (b) sub-schematic diagram in FIG. 5 is a schematic diagram of single-chip ray tracing acquisition of 3D POI provided by the embodiment of the present application;
  • Fig. 6 is a schematic flow chart of generating 3D display information by the terminal device according to the data corresponding to the POI provided by the embodiment of the present application;
  • FIG. 7 is a schematic diagram of the 3D display information provided by the embodiment of the present application being blocked
  • FIG. 8 is another schematic diagram of 3D display information being blocked according to the embodiment of the present application.
  • FIG. 9 is a schematic flow chart of data generation corresponding to the previous POI provided by the embodiment of the present application.
  • FIG. 10 is a schematic flow chart of generating 3D display information including 3D text, 3D icons and background panels provided by the embodiment of the present application;
  • FIG. 11 is a schematic flowchart of occlusion analysis and adjustment of 3D display information provided by the embodiment of the present application.
  • FIG. 12 is another schematic flowchart of occlusion analysis and adjustment of 3D display information provided by the embodiment of the present application.
  • Figure 13 is a comparison diagram of the results of the method of the embodiment of the application and the prior art provided by the embodiment of the application;
  • FIG. 14 is a schematic structural diagram of a terminal device provided by an embodiment of the present application.
  • FIG. 15 is another schematic structural diagram of a terminal device provided by an embodiment of the present application.
  • the embodiment of the present application provides a POI display method and device for generating 3D display information based on POI corresponding data
  • the 3D display information may include at least one of 3D text, 3D icon, and 3D text background board, Optimized the problem that the existing POI content is not displayed three-dimensionally, improving the user's sense of immersion when using it, and, in the 3D scene, according to the occlusion relationship of the 3D display information corresponding to the POI (multiple 3D display information in the 3D scene displayed at the same time may be When one or more 3D display information is blocked) Adjust the 3D display information corresponding to the blocked POI to avoid ambiguity caused by the user seeing only part of the 3D display information when browsing.
  • POI is an important part of the navigation electronic map. It generally refers to a certain landmark, building, scenic spot, etc. on the electronic map. , supermarkets, restaurants, hotels, convenience stores, hospitals, etc.), tourist attractions (parks, public toilets, etc.), historic sites, transportation facilities (various stations, parking lots, speed cameras, speed limit signs) and other places.
  • the attributes of POI data generally include POI name, category, longitude, latitude, contact information, housing structure and other information.
  • AR is a technology that ingeniously integrates virtual information with the real world. It widely uses various technical means such as multimedia, 3D modeling, real-time tracking and registration, intelligent interaction, and sensing to integrate computer-generated text, images, and 3D models. , music, video and other virtual information are simulated and applied to the real world, and the two kinds of information complement each other, thus realizing the "enhancement" of the real world.
  • Virtual reality technology is to use the data in real life, through the electronic signal generated by computer technology, combine it with various output devices to transform it into a phenomenon that people can feel. These phenomena can be real objects in reality. , it can also be a substance invisible to our naked eyes, which is represented by a three-dimensional model.
  • FIG. 3 is a schematic diagram of a system architecture provided by an embodiment of the present application. Based on the system architecture shown in Figure 3, the product implementation form of the POI display method in the three-dimensional scene provided by the embodiment of the present application is to rely on AR/VR software development kit (software development kit, SDK) platform software and three-dimensional scene data , and deployed on terminal devices that support AR/VR applications.
  • AR/VR software development kit software development kit, SDK
  • the program code of the POI display method in the three-dimensional scene provided by the embodiment of the present application can run in the host memory of the terminal device, or can run in the GPU memory, or a part of the program code can be run in the host memory, and a part of the program code can be run in the host memory.
  • this application does not specifically limit the location where the program code runs on the terminal device.
  • the running program code loads from the server the surrounding 3D scene data corresponding to the current position of the terminal device and the POI data list. , and exists on the server).
  • the POI display method in the 3D scene provided by the embodiment of the present application can run on a terminal device supporting AR/VR applications, or on a specific type of game application (in this case, the corresponding virtual reality The three-dimensional scene of the world) on the terminal device, which is not limited in this application, and FIG. 3 is only an example.
  • a terminal device supporting AR/VR applications is taken as an example for description.
  • the terminal device should also be able to support the rendering and display of a three-dimensional scene, and allow obtaining the current location of the terminal device itself.
  • the method of the embodiment of the present application also needs to have the following related software structure:
  • the terminal device is a terminal device that supports AR/VR applications
  • a related AR/VR software development kit software development kit, SDK
  • SDK software development kit
  • a corresponding 3D scene can be constructed based on the 3D scene data delivered by the server, for example, constructing building entities, roads, public facilities, etc.
  • POI location services can be provided based on the POI data related to the current location sent by the server, that is, the surrounding POI data can be returned according to the current location.
  • the terminal device can be a handheld terminal device, such as a mobile phone, a tablet, a small personal computer, a notebook computer, etc., or a wheeled mobile device, such as a robot (such as a sweeper Robots, robot waiters, etc.), self-driving vehicles, assisted driving vehicles, etc., can also be smart wearable devices, such as dedicated AR devices, VR devices, etc., as long as they have the above hardware-related and software-related devices, they can be called It is the terminal device described in this application, and the specific form of the terminal device is not limited in this application.
  • FIG. 4 shows the POI provided in the embodiment of the present application in a three-dimensional scene
  • a schematic flow chart of the display method which may specifically include the following steps:
  • the terminal device acquires first data corresponding to the first POI in the 3D scene, where the first data includes the target 3D coordinates of the first POI in the 3D scene and the identifier of the first POI, and the first POI is in the 3D scene Any POI of .
  • the terminal device will acquire the data corresponding to the first POI in the 3D scene (such as the 3D scene constructed at the current moment and the current location) (which can be referred to as the first data).
  • the first data includes the first POI in the constructed 3D scene
  • the three-dimensional coordinates of the target in the scene and the identification of the first POI, the first POI is any POI in the constructed three-dimensional scene, for example, assuming that the terminal device includes three POIs in the three-dimensional scene constructed at the current moment and current position , then the first POI refers to any one of the three POIs.
  • the 3D scene is constructed by the terminal device based on the acquired 3D data of the current location.
  • the specific construction process may be: first, The terminal device sends the current location of the terminal device and the orientation of the terminal device to the server corresponding to the terminal device (the orientation of the terminal device is used to represent the orientation of the user carrying the terminal device), and the server receives the information sent by the terminal device. After the current location and orientation of the current location and orientation, the current location and orientation will be compared and matched with the stored position and orientation.
  • the 3D scene data corresponding to the position and orientation will be sent to the The terminal device sends, and after receiving the 3D scene data sent by the server, the terminal device can construct a 3D scene of the current location and orientation based on the 3D scene data. It should be noted that the 3D scene data is only used by the terminal device to construct the 3D scene.
  • the server needs to further obtain the data corresponding to each POI in the constructed 3D scene (which may be referred to as POI data ), as mentioned above, the first POI corresponds to the first data, and the terminal device will not only receive the current location and orientation sent by the server, but also receive the POI data corresponding to the three-dimensional scene data sent by the server, namely The first data.
  • POI data the data corresponding to each POI in the constructed 3D scene
  • the terminal device will not only receive the current location and orientation sent by the server, but also receive the POI data corresponding to the three-dimensional scene data sent by the server, namely The first data.
  • the terminal device may obtain the 3D scene data corresponding to the current position and orientation of the terminal device and the corresponding POI data from itself (that is, not from Other devices receive it, but it has stored it itself), but this method requires the terminal device to have a large storage space.
  • both the 3D scene data of the terminal device and the first data corresponding to the first POI are delivered by the server as an example, and details will not be described later.
  • the logo can be in any form of expression, for example, it can be text (such as the name of the building hanging on a certain building, such as "xx school", "xx hospital"), the text
  • OCR optical character recognition
  • the logo can be in any form of expression, for example, it can be text (such as the name of the building hanging on a certain building, such as "xx school", "xx hospital"), the text
  • the language type is not limited, it can be Chinese, English or other languages, which is not limited in this application; the logo can also be a trademark or logo, such as Huawei logo, xx school badge, etc., which is not limited in this application .
  • the initial three-dimensional coordinates of the POI corresponding to the pixel coordinate set are obtained by means of forward intersection or ray tracing.
  • the initial three-dimensional coordinates are generally used to characterize the center position of the above-mentioned pixel coordinate set, and are the three-dimensional coordinates of the POI corresponding to the logo on the building facade. coordinate.
  • the facade information of the 3D POI is obtained through spatial calculation.
  • the facade of the 3D POI is essentially the facade of the corresponding building.
  • the calculation method can be the method of obtaining the 3D POI facade by multi-point fitting as shown in the sub-schematic diagram of (a) in Figure 5, wherein, in Figure 5 (a) S1 and S2 in the sub-schematic diagram are two different camera positions respectively, and the calculation method can also be the method of obtaining 3D POI facade by single-chip ray tracing as shown in the sub-schematic diagram (b) of Figure 5; finally, the POI
  • the initial three-dimensional coordinates of the POI are extended along the normal direction of the POI facade (that is, the preset distance is extended outward, the principle is to make the POI text and the building have a certain distance, so that there will be no collision) to adjust the POI point
  • the 3D coordinates are used to obtain the final 3D coordinates of the POI target, which effectively prevents the POI display information from colliding with the building in the
  • the target 3D coordinates corresponding to the POI are collected according to the above method, and then each 3D scene and the target 3D coordinates of the POI corresponding to the 3D scene are stored in the server to facilitate subsequent services.
  • Terminal Equipment In addition, in other embodiments of the present application, the size of the POI may also be correspondingly recorded and stored in the server.
  • the terminal device generates first 3D display information according to the first data.
  • the first 3D display information includes at least one of the 3D text corresponding to the logo, the 3D icon corresponding to the logo, and the background board of the 3D text.
  • the first The display position of the 3D display information in the 3D scene is determined according to the 3D coordinates of the target.
  • the terminal device After acquiring the first data corresponding to the first POI in the 3D scene, the terminal device will further generate corresponding 3D display information (which may be referred to as first 3D display information) according to the first data, wherein the first 3D display information It can include at least one of the 3D text corresponding to the logo, the 3D icon corresponding to the logo, and the background board of the 3D text.
  • the background board of the 3D text refers to the background that can accommodate the 3D text frame, the background frame may be a rectangular frame, an elliptical frame, or any other frame, which is not limited in this application.
  • the display position of the first 3D display information in the 3D scene is determined by the target 3D coordinates of the first POI included in the first data.
  • the process for the terminal device to generate the corresponding first 3D display information according to the first data may specifically be as follows: first, the terminal device dynamically generates the 3D display information corresponding to the logo based on the 3D character library. 3D text, and generate a background plate covering the 3D text according to the size of the 3D text. It should be noted that dynamic generation means that it can be generated anytime and anywhere according to needs, and is used to distinguish the 3D text built into the terminal device at the beginning.
  • the 3D text is not limited to the language type, and can be in Chinese, such as the name of a building hanging on a certain building, such as "xx school”, “xx hospital”, “xx shopping mall”, “xx “Park”, etc., can also be in English or other languages, such as "xx school", “xx hospital”, etc., which is not limited in this application.
  • the terminal device will further generate a 3D icon corresponding to the logo according to the logo.
  • the 3D icon can be distinguished based on the service type. The icon is the symbol of "coffee cup", and the 3D icon of the shopping place is the symbol of "shopping bag", etc.
  • the terminal device adjusts the relative positions of the generated 3D text, background board and 3D icon to obtain the first 3D display information.
  • the specific implementation manners in which the terminal device generates a 3D icon corresponding to the identifier according to the identifier include but are not limited to:
  • the terminal device will determine the classification corresponding to the identification according to the identification code, and generate a 3D icon corresponding to the first POI according to the first mapping relationship between the classification code and the icon.
  • classification codes can be regarded as indexes of icons (the index rules have been defined in advance), and the corresponding icons can be directly accessed according to the classification codes, and then based on This icon generates a corresponding 3D icon.
  • an icon may contain multiple types of 3D text, that is, different 3D texts can belong to the same icon, for example, the 3D text corresponding to "A shopping mall” and “B shopping mall” are different, but both It belongs to a shopping place, so it can correspond to the same icon, and the generated 3D icons can all be 3D "shopping bag” symbols.
  • the terminal device can extract the key features of the logo, and according to the relationship between the key features and the icon
  • the second mapping relationship generates a 3D icon corresponding to the first POI.
  • This method is similar to the above method, the difference is that the role of classification coding is replaced by the extracted key features, and each type of key features also needs to have a one-to-one correspondence with the icon. For details, refer to the above method a, which will not be repeated here.
  • FIG. 6 is a schematic flowchart of the terminal device generating 3D display information according to the data corresponding to the POI provided by the embodiment of the present application.
  • the process includes:
  • the terminal device uses the 3D text library (existing) to dynamically generate the 3D text of the POI logo (for example, it can be a name or a logo, which is not specifically limited).
  • the process of generating 3D text can also be called The 3D text is initialized, and then the corresponding 3D icon is initialized according to the classification code or the key feature of the POI.
  • the process of generating the 3D icon can also be called 3D icon initialization.
  • the background board covering the 3D text size can be generated directly according to the text size, or the 3D text can be generated according to the text size after the initialization of the 3D text and 3D icon. The size of the background board.
  • this application does not limit the time when the background board is generated.
  • the background board is generated after the initialization of the 3D text and 3D icons. Then determine the display direction of 3D text and 3D icons according to the direction of the camera position of the terminal device (that is, the direction of sight of the user carrying the terminal device), and then adjust the display direction according to the orientation of the camera so that the method of 3D text and classification models
  • the line direction is consistent with the line of sight direction, or the display flip adjustment is performed according to the 3D POI's own direction and position, which is not limited here.
  • the relative positions of the generated 3D text, 3D icon and background board are adjusted, and the design of the 3D display information corresponding to the POI is completed.
  • the process of generating 3D display information by the terminal device according to the data corresponding to the POI may also consider the display position of the target's 3D coordinates in the constructed 3D scene.
  • the 3D text and/or 3D icon in the display information of the POI whose display position is far away can be larger, while the POI whose display position is near
  • the 3D text and/or 3D icon in the POI display information can be smaller, and the scaling up/down ratio can be set based on the distance between the display position and the camera position, which will not be repeated here.
  • the 3D text and/or 3D icon in the display information of the POI whose display position is far away may be smaller, while the display position is closer
  • the 3D text and/or 3D icon in the display information of the POI at the POI can be larger, and the scaling up/down ratio can also be set based on the distance between the display position and the camera position, which will not be described here. .
  • the terminal device generates a first cross section of the first 3D display information, and samples the first cross section to obtain at least one sampling point.
  • the terminal device After the terminal device generates the first 3D display information corresponding to the first POI, it will further generate a cross section of the first 3D display information (which may be referred to as a first cross section), and sample the first cross section to obtain At least one sampling point.
  • a cross section of the first 3D display information (which may be referred to as a first cross section)
  • sample the first cross section to obtain At least one sampling point.
  • the way the terminal device samples the first cross-section may be random sampling, and the number n of sampling points (such as 3, 5, 8, etc.) It can be preset; it can also be sampled according to preset rules, for example, how far apart to sample once, and how much area to sample once; it can also be to sample a special point of the first cross section, for example, the corner point of the first cross section , central point, etc., the specific application does not limit how to obtain at least one sampling point by sampling.
  • a typical sampling method is to use the four corner points of the first cross section as sampling points.
  • the terminal device adjusts the first 3D display information in the 3D scene, where the second cross section is a cross-section of the second 3D display information corresponding to the second POI, where the second POI is any other POI different from the first POI in the 3D scene.
  • the terminal device After the terminal device samples the first cross-section to obtain at least one sampling point, it will further determine whether the connection line between the camera position of the terminal device and the sampling point passes through the second cross-section, wherein the second cross-section is a cross-section of the second 3D display information corresponding to the second POI, and the second POI is any other POI different from the first POI in the constructed 3D scene. If the result of the judgment of the terminal device is that at least one connection line between the camera position of the terminal device and the sampling point passes through the second cross section, for example, assuming that there are 3 sampling points, there is a distance between the camera position and each sampling point. If there is one connecting line, there are three connecting lines in total.
  • the terminal device needs to adjust the first 3D display information in the constructed 3D scene.
  • Figure 7 provides a schematic diagram of 3D display information being blocked.
  • the 3D display information corresponding to multiple POIs in the scene is displayed at the same time, coverage may occur, as shown in “Starbucks Collection” in Figure 7.
  • the displayed content of "Yinweicha WE” (namely the first 3D displayed information mentioned above) is blocked by the displayed content (that is, the above-mentioned second 3D display information). If no adjustment is made, the user will The general will only see part of "Yinweicha WE", and users may have ambiguities when understanding it.
  • the adjustment methods of the terminal device may include but are not limited to:
  • the terminal device deletes the first 3D display information in the constructed 3D scene.
  • the terminal device reduces the first 3D display information according to a preset ratio until the line between the camera position of the terminal device and the sampling point does not pass through the second cross section. For example, it can be reduced according to a preset gradient to The original 80%, 60%, etc.
  • the terminal device adjusts the display position of the first 3D display information in a direction away from the display position of the second 3D display information until the connecting line between the camera position of the terminal device and the sampling point does not pass through the second horizontal line. section.
  • the purpose of the adjustment is to ensure the integrity of the 3D display information in the constructed 3D scene and avoid ambiguity caused by the user seeing only part of the POI content on the screen.
  • the first 3D display information in addition to judging whether the first 3D display information is blocked based on whether the connection line between the camera point and the sampling point passes through other cross-sections, it can also be judged based on other methods Whether the first 3D display information is blocked, for example, can be determined by judging whether the four corner points of the first cross section are visible (that is, judging whether the connection line between any one of the four corner points and the camera position has penetrated other cross-sections), specifically, if there is at least one connecting line between the camera position of the terminal device and the four sampled corners that passes through the second cross-section, the terminal device based on these four corners The line segment between the points and the target point on the line segment are used to calculate the occluded area of the first cross section, and then the ratio of the occluded area to the total area of the first cross section is judged. If the ratio between the areas of the two reaches a preset threshold, it is considered that the first 3D display information is too much blocked, and
  • the terminal device calculates a part of the shaded area of the first cross section based on the line segment between the four corner points of the first cross section and the target point on the line segment.
  • This implementation can be shown in Figure 8, if the adjacent corner points of the first cross-section are visible, it indicates that the line segment between the two adjacent corner points is visible; if the adjacent two corner points, If one corner point is visible but the other corner point is invisible, it means that the line segment between the two adjacent corner points is invisible.
  • the two adjacent corner points can be obtained by dichotomy
  • the target point can also be other selection methods, not limited here
  • update the invisible corner point as the selected target point continue to repeat the above process until the critical point is determined on the line segment (reaching the real Points within the allowable error range of the critical point can all be counted as the critical point described in the application, and are not limited here), as shown in Figure 8, 1 and 2 are the critical points determined, and the left side in Figure 8 is the determined critical point.
  • the terminal device calculates the ratio of the covered area to the size of the overall first cross-section, and if the ratio does not exceed the preset threshold, it considers that the covered area is small, and the first 3D display information is visible as a whole and can be retained; If the ratio exceeds the preset threshold, it is considered that the covered area is large, and continuing to keep it may cause ambiguity in the user's understanding. In this case, the first 3D display information needs to be adjusted.
  • the adjustment method of the terminal device may include but not limited to:
  • the terminal device deletes the first 3D display information in the constructed 3D scene.
  • the terminal device shrinks the first 3D display information according to a preset ratio until the ratio between the shaded area of the first cross-section and the area of the first cross-section does not exceed a preset threshold, for example, according to a preset gradient Zoom out to 80%, 60%, etc.
  • the terminal device adjusts the display position of the first 3D display information in a direction away from the display position of the second 3D display information until the ratio between the shaded area of the first cross-section and the area of the first cross-section does not exceed preset threshold.
  • the purpose of the adjustment is to ensure the overall integrity of the 3D display information in the constructed 3D scene, and to avoid ambiguity caused by the user seeing only the unoccluded part of the POI content on the screen.
  • the 3D display information is generated based on the data corresponding to the POI.
  • the 3D display information includes 3D text and 3D icons, which optimizes the problem that the existing POI content is not displayed three-dimensionally, and improves the user's sense of immersion when using it.
  • the 3D display information is adjusted to avoid ambiguity caused by users viewing only part of the 3D display information when browsing.
  • the following uses the AR/VR SDK as the 3D rendering engine Unity software as an example to illustrate, and the Unity software provides a packaged 3D rendering pipeline, providing functions such as collision detection and 3D rendering , and additionally load 3D scene data; according to the calculation process described in the above-mentioned embodiment corresponding to FIG.
  • the specific implementation steps are as follows:
  • Step 1 Data generation corresponding to the POI in the early stage.
  • the generation process is shown in Figure 9, which will not be described in detail this time. This step is performed after obtaining the camera position and attitude of the acquisition device.
  • Step 2 Generate 3D display information including 3D text, 3D icon and background board, and calculate the adaptive layout of its content according to the display design of POI content.
  • the generation process is shown in Figure 10, and will not be described here. This step starts when the user experiences the 3D POI on the terminal device after the POI data extraction is completed to form the location service.
  • Step 3 occlusion analysis and adjustment of 3D display information.
  • the cross-section of the generated 3D display information it is judged whether the sampling points on the cross-section are visible on the camera of the terminal device to analyze the occlusion of the 3D display information, and the visibility of the 3D display information is determined by different occlusion judgment rules.
  • Rule 1 as shown in Figure 11, if the sampling points on the cross section are invisible (occluded), then choose to adjust the 3D display information in the constructed 3D scene, for example, remove the occluded 3D display information ( Figure 11 This method is shown), or, scale down the occluded 3D display information, or move the occluded 3D display information.
  • Rule 2 judge whether to adjust the 3D display information in the constructed 3D scene according to the size of the cross-sectional covered area. If the cross-sectional covered area exceeds the preset threshold, adjust, and vice versa. If it is not adjusted, the adjustment method shown in Figure 12 is whether to delete or not.
  • Figure 13 is a comparison diagram of the results of the method of the embodiment of the application and the prior art provided by the embodiment of the application, wherein the sub-schematic diagram (a) in Figure 13 is the display result of the method of the embodiment of the application, The (b) sub-schematic diagram in Figure 13 is the display result of the prior art.
  • the 3D display information of POI is fused and displayed with 3D text and 3D icons in the 3D scene, so as to provide users with better Browsing experience, the integration of 3D display information and marked 3D structural entities is better, users can simply associate 3D display information with marked 3D entities, and POI content can provide users with changes in distance, and can follow the user The line of sight to adjust the display.
  • using the method of the embodiment of the present application in the AR/VR scene has the following characteristics: 1) The number of POI content in the current frame cannot be too much when the user browses, and the content is displayed according to the distance from the user, the occlusion relationship, and the weight of the POI Prioritize. 2) Different display combinations of 3D text and 3D symbols can be designed, and the characteristics and styles of 3D structural entities can be customized.
  • FIG. 14 is a schematic diagram of a terminal device provided in an embodiment of the present application.
  • the terminal device 1400 may specifically include: an acquisition module 1401 configured to acquire first data corresponding to a first POI in a three-dimensional scene, wherein, The first data includes the target three-dimensional coordinates of the first POI in the three-dimensional scene and the first POI's identification, and the first POI is any POI in the three-dimensional scene; the generating module 1402 is configured to, according to the first POI A piece of data generates first 3D display information, the first 3D display information includes at least one of the 3D text corresponding to the logo, the 3D icon corresponding to the logo, and the background plate of the 3D text, the first 3D display information The display position in the 3D scene is determined according to the 3D coordinates of the target; the sampling module 1403 is configured to generate a first cross section of the first 3D display information, and sample the first cross section to obtain at least one sampling point; An adjustment module 1404, configured to adjust the first 3D display information in the 3D scene when at least one line between the camera position of the terminal device 1400 and the sampling
  • the terminal device 1400 generates 3D display information based on the data corresponding to the POI.
  • the 3D display information may include at least one of 3D text, 3D icons, and 3D text background panels, optimizing the existing POI content.
  • the problem that the display is not three-dimensional improves the immersion of the user when using it, and, in the 3D scene, according to the occlusion relationship of the 3D display information corresponding to the POI (in the 3D scene, multiple 3D display information displayed at the same time may appear one or more 3D display information is blocked) Adjust the 3D display information corresponding to the blocked POI to avoid ambiguity caused by the user seeing only part of the 3D display information when browsing.
  • the generating module 1402 is specifically configured to: generate a 3D character corresponding to the logo based on the 3D character library, and generate a background plate of the 3D character according to the size of the 3D character; The 3D icon corresponding to the logo; the relative positions of the 3D text, the background plate and the 3D icon are adjusted to obtain the first 3D display information.
  • the generation module 1402 is specifically configured to: determine the classification code corresponding to the logo according to the logo, and generate the 3D icon according to the first mapping relationship between the classification code and the icon, wherein, The classification code is included in the first data; or, the key feature of the identification is extracted, and the 3D icon is generated according to the second mapping relationship between the key feature and the icon.
  • the sampling module 1403 is specifically configured to: use the four corner points of the first cross section as sampling points.
  • the terminal device 1400 further includes: a calculation module 1405, configured to have at least one connecting line passing through the second cross section between the camera position of the terminal device 1400 and the four corner points In the case of , calculate the shaded area of the first cross-section based on the line segment between the four corner points and the target point on the line segment; the adjustment module 1404 is also used to compare the shaded area with the first When the ratio of the areas of the cross sections reaches a preset threshold, the first 3D display information is adjusted in the 3D scene.
  • a calculation module 1405 configured to have at least one connecting line passing through the second cross section between the camera position of the terminal device 1400 and the four corner points In the case of , calculate the shaded area of the first cross-section based on the line segment between the four corner points and the target point on the line segment; the adjustment module 1404 is also used to compare the shaded area with the first When the ratio of the areas of the cross sections reaches a preset threshold, the first 3D display information is adjusted in the 3D scene.
  • the calculation module 1405 will also calculate the occluded area of the cross-section corresponding to the 3D display information, and calculate the ratio of the occluded area to the area of the overall first cross-section. If it exceeds the preset threshold, it is considered that the occluded area is small, and the first 3D display information is visible as a whole, and can be retained; if the ratio exceeds the preset threshold, it is considered that the occluded area is large, and continued retention may cause ambiguity in the user's understanding , at this time, the first 3D display information needs to be adjusted. The purpose of the adjustment is to ensure the overall integrity of the 3D display information in the constructed 3D scene, and to avoid ambiguity caused by the user seeing only the unoccluded part of the POI content on the screen.
  • the adjustment module 1404 is specifically configured to: delete the first 3D display information in the three-dimensional scene; or, reduce the first 3D display information according to a preset ratio; or, The display position of the first 3D display information is adjusted in a direction away from the display position of the second 3D display information.
  • the adjustment mode of the adjustment module 1404 may include but not limited to: a. Delete The first 3D display information. b.
  • the adjustment mode of the adjustment module 1404 may include but not limited to: a. Delete the first cross-section in the constructed 3D scene A 3D display information. b.
  • the target 3D coordinates of the first POI in the 3D scene are obtained by extending the initial 3D coordinates of the first POI along the normal direction of the façade of the first POI.
  • the coordinates are three-dimensional coordinates corresponding to a set of pixel coordinates obtained through an intersection method or a ray tracing method, and the set of pixel coordinates is a set of pixel coordinates of the first POI in the picture obtained through OCR.
  • the initial three-dimensional coordinates obtained based on the forward intersection method or the ray tracing method are extended along the normal direction of the facade of the POI to obtain the target three-dimensional coordinates, so that the 3D display information and the constructed 3D scene can be avoided. Collisions between entities (eg, buildings) in the game improve the visual experience.
  • the obtaining module 1401 is specifically configured to: send the current location of the terminal device 1400 and the orientation of the terminal device 1400 to the server, so that the server determines the three-dimensional location corresponding to the current location.
  • the acquisition module 1401 receives the 3D scene data (used to construct a 3D scene) and POI data corresponding to the current position and orientation from the server in real time, so as to avoid excessive data stored on the terminal device from causing data redundancy.
  • FIG. 15 is a schematic structural diagram of the terminal device provided by the embodiment of the present application.
  • the terminal device 1500 can be deployed with the corresponding embodiment in FIG.
  • the described terminal device 1400 is used to realize the functions of the terminal device 1400 in the embodiment corresponding to FIG. Differences may include one or more central processing units (central processing units, CPU) 1522 and memory 1532, one or more storage media 1530 (such as one or more mass storage devices) for storing application programs 1542 or data 1544.
  • the memory 1532 and the storage medium 1530 may be temporary storage or persistent storage.
  • the program stored in the storage medium 1530 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations on the terminal device 1500 . Furthermore, the central processing unit 1522 may be configured to communicate with the storage medium 1530 , and execute a series of instruction operations in the storage medium 1530 on the terminal device 1500 .
  • the terminal device 1500 can also include one or more power supplies 1526, one or more wired or wireless network interfaces 1550, one or more input and output interfaces 1558, and/or, one or more operating systems 1541, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
  • operating systems 1541 such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
  • the central processing unit 1522 is configured to execute the steps performed by the terminal device in the embodiment corresponding to FIG. 4 .
  • the central processing unit 1522 can be used to: Firstly, acquire data corresponding to the first POI in the 3D scene (may be referred to as first data), the first data includes the target 3D coordinates of the first POI in the constructed 3D scene And the identification of the first POI, the first POI is any POI in the constructed 3D scene, for example, assuming that the terminal device includes 3 POIs in the 3D scene constructed at the current moment and current position, then the first POI refers to is any one of these 3 POIs.
  • first 3D display information After acquiring the first data corresponding to the first POI in the 3D scene, further generate corresponding 3D display information (which may be referred to as first 3D display information) according to the first data, where the first 3D display information may include information related to At least one of the 3D text corresponding to the logo, the 3D icon corresponding to the logo, and the background plate of the 3D text. It should be noted that the display position of the first 3D display information in the three-dimensional scene is determined by the first data The 3D coordinates of the target included in the first POI are determined.
  • the first cross section After generating the first 3D display information corresponding to the first POI, regenerate the cross section of the first 3D display information (which may be referred to as the first cross section), and sample the first cross section to obtain at least one sampling point. After sampling the first cross-section to obtain at least one sampling point, it will be further judged whether the connection line between the camera position of the terminal device and the sampling point passes through the second cross-section, wherein the second cross-section is the same as A cross-section of the second 3D display information corresponding to the second POI, where the second POI is any other POI different from the first POI in the 3D scene.
  • connection line between the camera position of the terminal device and the sampling point passes through the second cross section, for example, assuming that there are 3 sampling points, there is a distance between the camera position and each sampling point. If there is one connecting line, there are 3 connecting lines in total. Assuming that at least one of the 3 connecting lines passes through the cross-sections of other POIs in the 3D scene, it means that the first cross-section is blocked by other cross-sections. Then, the first 3D display information needs to be adjusted in the 3D scene.
  • the device embodiments described above are only illustrative, and the units described as separate components may or may not be physically separated, and the components shown as units may or may not be A physical unit can be located in one place, or it can be distributed to multiple network units. Part or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
  • the connection relationship between the modules indicates that they have communication connections, which can be specifically implemented as one or more communication buses or signal lines.
  • the essence of the technical solution of this application or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product is stored in a readable storage medium, such as a floppy disk of a computer , U disk, mobile hard disk, read-only memory (read-only memory, ROM), random access memory (random access memory, RAM), magnetic disk or optical disk, etc., including several instructions to make a computer device (which can be A personal computer, a training device, or a network device, etc.) executes the methods described in various embodiments of the present application.
  • a computer device which can be A personal computer, a training device, or a network device, etc.
  • all or part of them may be implemented by software, hardware, firmware or any combination thereof.
  • software When implemented using software, it may be implemented in whole or in part in the form of a computer program product.
  • the computer program product includes one or more computer instructions.
  • the computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable devices.
  • the computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transferred from a website, computer, training device, or data
  • the center transmits to another website site, computer, training device or data center via wired (eg, coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (eg, infrared, wireless, microwave, etc.).
  • wired eg, coaxial cable, fiber optic, digital subscriber line (DSL)
  • wireless eg, infrared, wireless, microwave, etc.
  • the computer-readable storage medium may be any available medium that can be stored by a computer, or a data storage device such as a training device or a data center integrated with one or more available media.
  • the available medium may be a magnetic medium (such as a floppy disk, a hard disk, or a magnetic tape), an optical medium (such as a DVD), or a semiconductor medium (such as a solid state disk (solid state disk, SSD)), etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Architecture (AREA)
  • Remote Sensing (AREA)
  • Processing Or Creating Images (AREA)

Abstract

一种POI的显示方法及设备,可应用于导航电子地图领域,具体可应用于AR/VR的三维场景构建中,也可以应用于游戏的虚拟三维场景构建中,方法包括:终端设备获取三维场景(如,当前时刻构建的三维场景)中第一兴趣点(POI)对应的第一数据,并基于第一数据生成第一3D显示信息,第一3D显示信息包括3D文字以及3D图标,优化了已有POI内容显示不立体的问题,提高了用户使用时的沉浸感,并且,在三维场景中根据第一POI对应的第一3D显示信息的遮挡关系(三维场景中多个3D显示信息同时显示可能会出现某个或多个3D显示信息被遮挡的情况)对被遮挡的3D显示信息进行调整,避免用户在浏览时由于只看到部分的3D显示信息而产生歧义。

Description

一种POI的显示方法及设备
本申请要求于2021年6月30日提交中国专利局、申请号为202110741983.4、申请名称为“一种POI的显示方法及设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及电子地图领域,尤其涉及一种POI的显示方法及设备。
背景技术
兴趣点(point of interest,POI)为导航电子地图的重要组成部分,一般是指电子地图上的某个地标、建筑、景点等,用以标示出该地所代表的政府部门、各行各业之商业机构(加油站、百货公司、超市、餐厅、酒店、便利商店、医院等)、旅游景点(公园、公共厕所等)、古迹名胜、交通设施(各式车站、停车场、超速照相机、限速标示)等处所。
随着增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)等的广泛应用,不可避免会使用到三维电子地图,因此POI在三维场景中的显示、更新方法也得到了越来越多的关注。目前已有的POI在三维场景中的显示方法主要分为两类:1)二维的平铺POI,平铺POI是通过用户的位置获取当前场景里周围POI数据,POI数据中包括位置、名称等,POI数据会与场景中的建筑物等信息进行关联,然后将POI的内容通过平铺的方式呈现在设备屏幕上,POI的内容包括名称、评分等信息。如图1所示,图1是平铺POI的一个应用场景示意图。2)POI三维标签,POI三维标签是根据用户附近位置中的POI数据,使用三维的内容标签融合在场景中,并且能够随着用户的视角进行调整。如图2所示,图2中的(a)子示意图和(b)子示意图分别为POI三维标签的应用场景示意图。
在上述方式1中,是将POI内容平铺在建筑物的屏幕范围,这容易与场景中的其他内容产生遮挡,并且POI与所属建筑物等实体关联性不强;在上述方式2中,POI三维标签中的内容为平面形式,是以平面的维度来表达3D POI的信息,呈现在终端设备中时用户的沉浸感会变弱,会对用户三维浏览的连贯性产生影响。
发明内容
本申请实施例提供了一种POI的显示方法及设备,用于基于POI对应的数据生成3D显示信息,该3D显示信息包括3D文字、3D图标、3D文字的背景板中的至少一项,优化了已有POI内容显示不立体的问题,提高了用户使用时的沉浸感,并且,在三维场景中根据POI对应的3D显示信息的遮挡关系(三维场景中多个3D显示信息同时显示可能会出现某个或多个3D显示信息被遮挡的情况)对被遮挡的POI对应的3D显示信息进行调整,避免用户在浏览时由于只看到部分的3D显示信息而产生歧义。
基于此,本申请实施例提供以下技术方案:
第一方面,本申请实施例首先提供一种POI的显示方法,可应用于导航电子地图领域,具体可应用于AR/VR的三维场景构建中,也可以应用于游戏的虚拟三维场景构建中,此 处不做限定。该方法包括:首先,终端设备会获取三维场景(如,当前时刻、当前位置构建的三维场景)中第一POI对应的数据(可称为第一数据),该第一数据包括第一POI在所构建的三维场景中的目标三维坐标以及该第一POI的标识,该第一POI为构建的三维场景中的任意一个POI,例如,假设终端设备在当前时刻、当前位置构建的三维场景中包括有3个POI,那么第一POI指的就是这3个POI中的任意一个。终端设备在获取到三维场景中第一POI对应的第一数据之后,将进一步根据该第一数据生成对应的3D显示信息(可称为第一3D显示信息),其中,该第一3D显示信息可以包括与该标识对应的3D文字、与该标识对应的3D图标以及该3D文字的背景板中的至少一项,需要说明的是,该第一3D显示信息在三维场景中的显示位置是由第一数据中包括的第一POI的目标三维坐标确定的。终端设备在生成与第一POI对应的第一3D显示信息之后,将进一步生成该第一3D显示信息的横截面(可称为第一横截面),并对该第一横截面进行采样,得到至少一个采样点。终端设备在对第一横截面进行采样得到至少一个采样点之后,会进一步判断该终端设备的相机位点与采样点之间的连线是否穿过第二横截面,其中,该第二横截面为与第二POI对应的第二3D显示信息的横截面,第二POI为该三维场景中不同于第一POI的其他任意一个POI。若终端设备判断的结果是终端设备的相机位点与采样点之间的至少一条连线穿过第二横截面,例如,假设采样点为3个,相机位点与每个采样点之间都可对应有一条连线,则共有3条连线,假设这3条连线中至少存在1条穿过了该三维场景中其他POI的横截面,说明该第一横截面被其他横截面遮挡了,那么终端设备就需在该三维场景中对第一3D显示信息进行调整。
在本申请上述实施方式中,基于POI对应的数据生成3D显示信息,该3D显示信息包括3D文字、3D图标、3D文字的背景板中的至少一项,优化了已有POI内容显示不立体的问题,提高了用户使用时的沉浸感,并且,在三维场景中根据POI对应的3D显示信息的遮挡关系(三维场景中多个3D显示信息同时显示可能会出现某个或多个3D显示信息被遮挡的情况)对被遮挡的POI对应的3D显示信息进行调整,避免用户在浏览时由于只看到部分的3D显示信息而产生歧义。
在第一方面的一种可能的实现方式中,终端设备根据该第一数据生成对应的第一3D显示信息的过程具体可以是:首先,终端设备基于3D文字库动态生成与该标识对应的3D文字,并根据该3D文字的大小生成该3D文字的背景板,需要注意的是,3D文字的背景板是指能容纳下该3D文字的背景框,该背景框可以是矩形框,也可以是椭圆形框,还可以是其他任意形状的框,本申请对此不做限定。其中需要注意的是,动态生成是指可根据需要随时随地生成,用于区别一开始内置于终端设备的3D文字。还需要注意的是,该3D文字不限定语言类型,可以是中文,如,某个建筑物上悬挂的建筑物名称,如,“xx学校”、“xx医院”、“xx商场”、“XX公园”等,也可以是英文或其他语言,如,“xx school”、“xx hospital”等,具体本申请对此不做限定。之后,该终端设备还将进一步根据该标识生成与该标识对应的3D图标,该3D图标可基于服务类型区分,例如,餐饮类的3D图标是“碗+筷子”的符号、茶饮类的3D图标是“咖啡杯”的符号、购物场所类的3D图标是“购物袋”的符号等,具体此次对3D图标的具体表现形式不做限定,只要符合能让用户根据3D 图标识别对应的服务类型即可。最后,终端设备对生成的3D文字、背景板以及3D图标进行相对位置调整,得到该第一3D显示信息。
在本申请上述实施方式中,针对POI在三维场景中显示的三维连贯性不足、沉浸感弱的问题,具体阐述了如何用于生成包括3D文字、3D图标以及背景板的3D显示信息,优化了POI内容在三维场景中的显示方式,提高了用户使用时的沉浸感。
在第一方面的一种可能的实现方式中,终端设备根据标识生成与该标识对应的3D图标的具体实现方式包括但不限于:a、若第一数据中除了包括第一POI在构建的三维场景中的目标三维坐标以及第一POI的标识之外,还包括分类编码,那么终端设备将根据该标识确定与该标识对应的分类编码,并根据该分类编码与图标之间的第一映射关系生成与该第一POI对应的3D图标。在本申请实施例中,图标与分类编码是一一对应的关系,分类编码可看做是图标的索引(索引规则已事先定义好),根据分类编码可直接调取到对应的图标,再基于该图标生成对应的3D图标。这里需要注意的是,一个图标下可能包括多种类型的3D文字,即不同的3D文字可以属于同一个图标,例如,“A商场”、“B商场”对应的3D文字是不同的,但都属于购物类场所,因此可对应同一个图标,生成的3D图标就可以都是3D的“购物袋”符号。b、若第一数据中只包括第一POI在构建的三维场景中的目标三维坐标以及第一POI的标识,那么终端设备可通过提取该标识的关键特征,并根据关键特征与图标之间的第二映射关系生成与该第一POI对应的3D图标。这种方式与上述方式类似,不同的地方在于,分类编码的作用由提取的关键特征取代,每种类型的关键特征同样需要与图标之间存在一一对应的关系。具体可参阅上述方式a,此处不予赘述。
在本申请上述实施方式中,具体阐述了几种生成3D图标的实现方式,具有灵活性和广泛适用性。
在第一方面的一种可能的实现方式中,终端设备对该第一横截面进行采样的方式可以是随机采样,采样点的数量n(如,3个、5个、8个等)也可以预设;也可以是按照预设规则采样,例如,间隔多远采样一次、多大面积内采样一次;也可以是对第一横截面的特殊点进行采样,例如,第一横截面的角点、中心点等,具体本申请对如何采样得到至少一个采样点的方式不做限定。在本申请实施例中,一种典型的采样方式将第一横截面的4个角点作为采样点。
在本申请上述实施方式中,具体阐述了一种典型的采样方式,具备可实现性。
在第一方面的一种可能的实现方式中,除了可以基于相机位点与采样点之间的连线是否穿过其他横截面来判断第一3D显示信息是否被遮挡外,还可以基于其他方式判断第一3D显示信息是否被遮挡,例如,可通过判断第一横截面的4个角点是否可见(即判断4个角点中的任意一个角点与相机位点的连线是否存在穿透了其他横截面的情况)来判断,具体地,在终端设备的相机位点与采样的4个角点之间至少存在一条连线穿过第二横截面的情况下,终端设备基于这4个角点之间的线段以及位于该线段上的目标点来计算第一横截面的被遮挡面积,之后,再判断被遮挡面积占第一横截面总面积的比值,若被遮挡面积与第一横截面的面积之间的比值达到预设阈值,则认为第一3D显示信息被遮挡的过多,终端设备就要在构建的三维场景中对该第一3D显示信息进行调整。
在本申请上述实施方式中,具体阐述了另一种判断第一3D显示信息是否被遮挡的方式,即首先计算3D显示信息对应的横截面的被遮挡面积,并计算被遮挡的面积与整体第一横截面的面积大小的比值,若比值未超过预设阈值,则认为被遮挡面积小,整体上该第一3D显示信息都可见,可以保留;若比值超过预设阈值,则认为被遮挡面积大,继续保留可能使得用户在理解上产生歧义,此时就需对该第一3D显示信息进行调整。调整的目的是为了保证构建的三维场景中3D显示信息的整体完整性,避免用户由于在屏幕上只看到未被遮挡部分的POI内容而产生歧义。
在第一方面的一种可能的实现方式中,终端设备对第一3D显示信息进行调整的方式包括但不限于:在该三维场景中删除该第一3D显示信息;或,将该第一3D显示信息按照预设比例进行缩小;或,将该第一3D显示信息的显示位置朝远离该第二3D显示信息的显示位置的方向进行调整。具体地,若终端设备的相机位点与采样点之间的至少一条连线穿过第二横截面,那么调整方式可以包括但不限于:a、在构建的三维场景中删除该第一3D显示信息。b、将第一3D显示信息按照预设比例进行缩小,直至终端设备的相机位点与采样点之间的连线均没有穿过第二横截面,例如,可以按照预设梯度缩小至原来的80%、60%等。c、将第一3D显示信息的显示位置朝远离第二3D显示信息的显示位置的方向进行调整,直至终端设备的相机位点与采样点之间的连线均没有穿过第二横截面。若第一横截面的被遮挡面积与第一横截面的面积之间的比值达到了预设阈值,那么调整方式可以包括但不限于:a、在构建的三维场景中删除该第一3D显示信息。b、将第一3D显示信息按照预设比例进行缩小,直至第一横截面的被遮挡面积与第一横截面的面积之间的比值未超过预设阈值,例如,可以按照预设梯度缩小至原来的80%、60%等。c、将第一3D显示信息的显示位置朝远离第二3D显示信息的显示位置的方向进行调整,直至第一横截面的被遮挡面积与第一横截面的面积之间的比值未超过预设阈值。
在本申请上述实施方式中,具体阐述了在构建的三维场景中对第一3D显示信息进行调整的几种实现方式,简单易操作,具备灵活性。
在第一方面的一种可能的实现方式中,该第一POI在该三维场景中的目标三维坐标由该第一POI的初始三维坐标沿该第一POI的立面的法线方向进行位置延伸得到,该初始三维坐标为通过前方交会方式或射线追踪方式得到的像素坐标集合对应的三维坐标,该像素坐标集合为通过OCR获取到的该第一POI在图片中的像素坐标的集合。
在本申请上述实施方式中,将基于前方交会方式或射线追踪方式得到的初始三维坐标沿POI的立面的法线方向进行位置延伸得到目标三维坐标,从而可避免3D显示信息与构建的三维场景中的实体(如,建筑物)发生碰撞,提高了视觉体验。
在第一方面的一种可能的实现方式中,该三维场景是由终端设备基于获取到的当前位置的三维数据构建得到的,在本申请的一些实施方式中,具体的构建过程可以是:首先,终端设备向与该终端设备对应的服务器发送该终端设备当前所处位置以及该终端设备的朝向(该终端设备的朝向是用于表征携带该终端设备用户的朝向),服务器接收到该终端设备发送的当前所处位置和朝向后,会将当前所处位置和朝向与存储的位置和朝向进行比对匹配,匹配到对应的位置和朝向后,就会将该位置和朝向对应的三维场景数据向该终端设备 发送,终端设备接收到服务器发送的该三维场景数据后,就可基于该三维场景数据构建的当前所处位置和朝向的三维场景。需要注意的是,该三维场景数据只是用于终端设备构建三维场景的,在本申请实施例中,服务器还需要进一步获取到在构建的三维场景中每个POI对应的数据(可称为POI数据),如上述所述,第一POI对应的就是第一数据,终端设备不仅会接收由服务器发送的当前所处位置以及朝向,也会接收服务器发送的与该三维场景数据对应的POI数据,即所述的第一数据。
在本申请上述实施方式中,阐述了终端设备是实时从服务器接收当前所处位置和朝向对应的三维场景数据(用于构建三维场景)和POI数据的,避免终端设备上存储过多数据造成的数据冗余。
本申请实施例第二方面提供一种终端设备,该终端设备具有实现上述第一方面或第一方面任意一种可能实现方式的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
本申请实施例第三方面提供一种终端设备,可以包括存储器、处理器以及总线系统,其中,存储器用于存储程序,处理器用于调用该存储器中存储的程序以执行本申请实施例第一方面或第一方面任意一种可能实现方式的方法。
本申请实施例第四方面提供一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机可以执行上述第一方面或第一方面任意一种可能实现方式的方法。
本申请实施例第五方面提供了一种计算机程序,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面任意一种可能实现方式的方法。
本申请实施例第六方面提供了一种芯片,该芯片包括至少一个处理器和至少一个接口电路,该接口电路和该处理器耦合,至少一个接口电路用于执行收发功能,并将指令发送给至少一个处理器,至少一个处理器用于运行计算机程序或指令,其具有实现如上述第一方面或第一方面任意一种可能实现方式的方法的功能,该功能可以通过硬件实现,也可以通过软件实现,还可以通过硬件和软件组合实现,该硬件或软件包括一个或多个与上述功能相对应的模块。此外,该接口电路用于与该芯片之外的其它模块进行通信。
附图说明
图1为平铺POI的一个应用场景示意图;
图2为POI三维标签的一个应用场景示意图;
图3为本申请实施例提供的系统架构的一个示意图;
图4为本申请实施例提供的POI在三维场景下的显示方法的一个流程示意图;
图5中的(a)子示意图为本申请实施例提供的多片前方交会获取3D POI的一个示意图;
图5中的(b)子示意图为本申请实施例提供的单片射线追踪获取3D POI的一个示意图;
图6为本申请实施例提供的终端设备根据POI对应的数据生成3D显示信息的一个流 程示意图;
图7为本申请实施例提供的3D显示信息被遮挡的一个示意图;
图8为本申请实施例提供的3D显示信息被遮挡的另一示意图;
图9为本申请实施例提供的前期POI对应的数据生成的一个流程示意图;
图10为本申请实施例提供的生成包括3D文字、3D图标和背景板的3D显示信息的一个流程示意图;
图11为本申请实施例提供的3D显示信息的遮挡分析和调整的一个流程示意图;
图12为本申请实施例提供的3D显示信息的遮挡分析和调整的另一流程示意图;
图13为本申请实施例提供的本申请实施例方法与现有技术的结果对比图;
图14为本申请实施例提供的终端设备的一个结构示意图;
图15为本申请实施例提供的终端设备的另一结构示意图。
具体实施方式
本申请实施例提供了一种POI的显示方法及设备,用于基于POI对应的数据生成3D显示信息,该3D显示信息可以包括3D文字、3D图标、3D文字的背景板中的至少一项,优化了已有POI内容显示不立体的问题,提高了用户使用时的沉浸感,并且,在三维场景中根据POI对应的3D显示信息的遮挡关系(三维场景中多个3D显示信息同时显示可能会出现某个或多个3D显示信息被遮挡的情况)对被遮挡的POI对应的3D显示信息进行调整,避免用户在浏览时由于只看到部分的3D显示信息而产生歧义。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
为了更好地理解本申请实施例的方案,下面先对本申请实施例可能涉及的相关术语和概念进行介绍。应理解的是,相关的概念解释可能会因为本申请实施例的具体情况有所限制,但并不代表本申请仅能局限于该具体情况,在不同实施例的具体情况可能也会存在差异,具体此处不做限定。
(1)兴趣点(point of interest,POI)
POI为导航电子地图的重要组成部分,一般是指电子地图上的某个地标、建筑、景点等,用以标示出该地所代表的政府部门、各行各业之商业机构(加油站、百货公司、超市、餐厅、酒店、便利商店、医院等)、旅游景点(公园、公共厕所等)、古迹名胜、交通设施(各式车站、停车场、超速照相机、限速标示)等处所。POI数据的属性一般包括POI的名称、类别、经度、纬度、联系方式、房屋构造等信息。
(2)增强现实(augmented reality,AR)
AR是一种将虚拟信息与真实世界巧妙融合的技术,广泛运用了多媒体、三维建模、实 时跟踪及注册、智能交互、传感等多种技术手段,将计算机生成的文字、图像、三维模型、音乐、视频等虚拟信息模拟仿真后,应用到真实世界中,两种信息互为补充,从而实现对真实世界的“增强”。
(3)虚拟现实(virtual reality,VR)
是一种可以创建和体验虚拟世界的计算机仿真系统,它利用计算机生成一种模拟环境,使用户沉浸到该环境中。虚拟现实技术就是利用现实生活中的数据,通过计算机技术产生的电子信号,将其与各种输出设备结合使其转化为能够让人们感受到的现象,这些现象可以是现实中真真切切的物体,也可以是我们肉眼所看不到的物质,通过三维模型表现出来。
下面结合附图,对本申请的实施例进行描述。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
首先,在介绍本申请实施例之前,先介绍本申请实施例方法在平台软件和数据资源中的实现形态,使得后续便于理解本申请实施例。具体请参阅图3,图3为本申请实施例提供的系统架构的一个示意图。基于图3所示的系统架构,本申请实施例提供的POI在三维场景中的显示方法的产品实现形态是依赖AR/VR的软件开发工具包(software development kit,SDK)平台软件和三维场景数据,并部署在支持AR/VR应用的终端设备上。运行时,本申请实施例提供的POI在三维场景中的显示方法的程序代码可以运行于终端设备的主机内存,也可以运行在GPU内存,还可以一部分程序代码运行在主机内存,一部分程序代码运行在GPU内存,具体本申请对程序代码运行在终端设备的位置不做限定。运行的程序代码从服务器上加载该终端设备当前所处位置对应的三维场景数据周围和POI数据列表,该POI数据列表包括终端设备在当前所处位置的三维场景中存在的POI数据(事先采集得到,并存在于服务器)。
这里需要注意的是,本申请实施例提供的POI在三维场景中的显示方法可以运行在支持AR/VR应用的终端设备上,也可以运行在支持特定类型游戏应用(此时对应的则是虚拟世界的三维场景)的终端设备上,具体本申请对此不做限定,图3仅为示例。为便于阐述,在下述实施例中,均以支持AR/VR应用的终端设备为例进行说明。此外,该终端设备还要能支持三维场景的渲染显示,并允许获取该终端设备自身所处的当前位置。除了上述所述的相关硬件基础,本申请实施例方法还需要具备如下相关的软件结构:
1)若终端设备是支持AR/VR应用的终端设备,则需要有相关的AR/VR的软件开发工具包(software development kit,SDK),用于提供场景信息,例如,用于获取该终端设备的当前位置、相机位点的朝向等信息。
2)能基于服务器下发的三维场景数据构建对应的三维场景,例如,构建建筑物实体、道路、公共设施等。
3)能基于服务器下发的与当前位置相关的POI数据提供POI位置服务,即根据当前位置返回周围的POI数据。
还需要说明的是,在本申请实施例中,终端设备可以是手持终端设备,例如,手机、平板、小型个人电脑、笔记本电脑等,也可以是轮式移动设备,例如,机器人(如,扫地机器人、机器人服务员等)、自动驾驶车辆、辅助驾驶车辆等,还可以是智能可穿戴设备, 例如,专用的AR设备、VR设备等,只要是具备上述硬件相关和软件相关的设备,都可称为本申请所述的终端设备,具体本申请对终端设备的具体形式不做限定。
基于图3对应实施例所述的系统架构,下面对本申请实施例提供的POI在三维场景下的显示方法进行说明,具体请参阅图4,图4为本申请实施例提供的POI在三维场景下的显示方法的一个流程示意图,具体可以包括如下步骤:
401、终端设备获取三维场景中第一POI对应的第一数据,其中,第一数据包括第一POI在三维场景中的目标三维坐标以及第一POI的标识,该第一POI为在三维场景中的任意一个POI。
首先,终端设备会获取三维场景(如,当前时刻、当前位置构建的三维场景)中第一POI对应的数据(可称为第一数据),该第一数据包括第一POI在所构建的三维场景中的目标三维坐标以及该第一POI的标识,该第一POI为构建的三维场景中的任意一个POI,例如,假设终端设备在当前时刻、当前位置构建的三维场景中包括有3个POI,那么第一POI指的就是这3个POI中的任意一个。
需要说明的是,在本申请实施例中,该三维场景是由终端设备基于获取到的当前位置的三维数据构建得到的,在本申请的一些实施方式中,具体的构建过程可以是:首先,终端设备向与该终端设备对应的服务器发送该终端设备当前所处位置以及该终端设备的朝向(该终端设备的朝向是用于表征携带该终端设备用户的朝向),服务器接收到该终端设备发送的当前所处位置和朝向后,会将当前所处位置和朝向与存储的位置和朝向进行比对匹配,匹配到对应的位置和朝向后,就会将该位置和朝向对应的三维场景数据向该终端设备发送,终端设备接收到服务器发送的该三维场景数据后,就可基于该三维场景数据构建的当前所处位置和朝向的三维场景。需要注意的是,该三维场景数据只是用于终端设备构建三维场景的,在本申请实施例中,服务器还需要进一步获取到在构建的三维场景中每个POI对应的数据(可称为POI数据),如上述所述,第一POI对应的就是第一数据,终端设备不仅会接收由服务器发送的当前所处位置以及朝向,也会接收服务器发送的与该三维场景数据对应的POI数据,即所述的第一数据。
还需要说明的是,在本申请的另一些实施方式中,终端设备获取该终端设备当前所处位置和朝向对应的三维场景数据以及对应的POI数据还可以是从自身调取得到(即不从其他设备接收,而是自身已存储),但这种方式需要终端设备具备较大的存储空间。为便于阐述,在本申请实施例中,均以终端设备的三维场景数据以及第一POI对应的第一数据均为服务器下发为例进行示意,后续不再赘述。
由上述可知,终端设备要从服务器获取该终端设备当前所处位置以及朝向对应的三维场景数据以及处于该三维场景中的POI数据,那么这些POI数据就需事先生成,然后存储于该服务器,后续服务器还需对三维场景数据、POI数据进行更新维护等。因此,在本申请的另一些实施方式中,对POI数据怎么产生的进行阐述,该过程如下:
首先,通过光学字符识别(optical character recognition,OCR)获取POI对应的标识在图片(如,采集设备在某位置、某朝向采集的全景图像)中的像素坐标集合(这是因为POI对应的标识的像素坐标会有多个),该标识可以是任意表现形式,例如,可以是文字(如, 某个建筑物上悬挂的建筑物名称,如,“xx学校”、“xx医院”),该文字不限定语言类型,可以是中文,也可以是英文或其他语言,具体本申请不做限定;该标识还可以是商标或logo,如华为logo、xx学校校徽等,具体本申请对此不做限定。然后通过前方交会方式或者射线追踪方式得到像素坐标集合对应的POI的初始三维坐标,该初始三维坐标一般用于表征上述像素坐标集合的中心位置,是POI对应的标识在建筑物立面上的三维坐标。之后,再通过空间计算获取3D POI的立面信息,3D POI的立面实质就是对应建筑物的立面,在AR/VR中,三维场景由于都是经过渲染的,因此建筑物立面一般都渲染成平面(即不是有弧线的),计算方法可以是如图5中(a)子示意图所示的前方交会多点拟合获取3D POI立面的方法,其中,图5中(a)子示意图中的S1、S2分别为两个不同的相机位点,该计算方法也可以是如图5中(b)子示意图所示的单片射线追踪获取3D POI立面的方法;最后将POI的初始三维坐标沿着POI立面的法线方向进行位置延伸(即往外延伸预设距离,原则是让POI文字与建筑物有一定距离,这样就不会产生碰撞),用以调整POI点的三维坐标,得到最终的POI的目标三维坐标,有效避免POI的显示信息在后续构建的三维场景中与建筑物发生碰撞。类似地,对预设范围内的每个三维场景均按照上述方法采集POI对应的目标三维坐标,再将每个三维场景、对应三维场景中的POI的目标三维坐标对应存储于服务器,便于后续服务终端设备。此外,在本申请的另一些实施方式中,POI的尺寸也可以对应记录下来并存储于服务器。
402、终端设备根据第一数据生成第一3D显示信息,第一3D显示信息包括与该标识对应的3D文字、与该标识对应的3D图标以及3D文字的背景板中的至少一项,第一3D显示信息在三维场景中的显示位置根据目标三维坐标确定。
终端设备在获取到三维场景中第一POI对应的第一数据之后,将进一步根据该第一数据生成对应的3D显示信息(可称为第一3D显示信息),其中,该第一3D显示信息可以包括与该标识对应的3D文字、与该标识对应的3D图标以及该3D文字的背景板中的至少一项,需要注意的是,3D文字的背景板是指能容纳下该3D文字的背景框,该背景框可以是矩形框,也可以是椭圆形框,还可以是其他任意形状的框,本申请对此不做限定。还需要说明的是,该第一3D显示信息在三维场景中的显示位置是由第一数据中包括的第一POI的目标三维坐标确定的。
需要说明的是,在本申请的一些实施方式中,终端设备根据该第一数据生成对应的第一3D显示信息的过程具体可以是:首先,终端设备基于3D文字库动态生成与该标识对应的3D文字,并根据该3D文字的大小生成覆盖该3D文字的背景板。其中需要注意的是,动态生成是指可根据需要随时随地生成,用于区别一开始内置于终端设备的3D文字。还需要注意的是,该3D文字不限定语言类型,可以是中文,如,某个建筑物上悬挂的建筑物名称,如,“xx学校”、“xx医院”、“xx商场”、“XX公园”等,也可以是英文或其他语言,如,“xx school”、“xx hospital”等,具体本申请对此不做限定。之后,该终端设备还将进一步根据该标识生成与该标识对应的3D图标,该3D图标可基于服务类型区分,例如,餐饮类的3D图标是“碗+筷子”的符号、茶饮类的3D图标是“咖啡杯”的符号、购物场所类的3D图标是“购物袋”的符号等,具体此次对3D图标的具体表现形式不做限定,只 要符合能让用户根据3D图标识别对应的服务类型即可。最后,终端设备对生成的3D文字、背景板以及3D图标进行相对位置调整,得到该第一3D显示信息。
需要说明的是,在本申请的一些实施方式中,终端设备根据标识生成与该标识对应的3D图标的具体实现方式包括但不限于:
a、若第一数据中除了包括第一POI在构建的三维场景中的目标三维坐标以及第一POI的标识之外,还包括分类编码,那么终端设备将根据该标识确定与该标识对应的分类编码,并根据该分类编码与图标之间的第一映射关系生成与该第一POI对应的3D图标。在本申请实施例中,图标与分类编码是一一对应的关系,分类编码可看做是图标的索引(索引规则已事先定义好),根据分类编码可直接调取到对应的图标,再基于该图标生成对应的3D图标。这里需要注意的是,一个图标下可能包括多种类型的3D文字,即不同的3D文字可以属于同一个图标,例如,“A商场”、“B商场”对应的3D文字是不同的,但都属于购物类场所,因此可对应同一个图标,生成的3D图标就可以都是3D的“购物袋”符号。
b、若第一数据中只包括第一POI在构建的三维场景中的目标三维坐标以及第一POI的标识,那么终端设备可通过提取该标识的关键特征,并根据关键特征与图标之间的第二映射关系生成与该第一POI对应的3D图标。这种方式与上述方式类似,不同的地方在于,分类编码的作用由提取的关键特征取代,每种类型的关键特征同样需要与图标之间存在一一对应的关系。具体可参阅上述方式a,此处不予赘述。
为便于理解该步骤402,下面以一个具体实例为例进行示意,具体请参阅图6,图6为本申请实施例提供的终端设备根据POI对应的数据生成3D显示信息的一个流程示意图。该过程包括:
首先,终端设备使用3D文字库(已有的)动态生成该POI标识的3D文字(如,可以是名称,也可以是logo,具体对此不做限定),生成3D文字的过程也可称为3D文字初始化,之后根据分类编码或者POI的关键特征初始化对应的3D图标,生成3D图标的过程也可以称为3D图标初始化。这里需要注意的是,在3D文字完成初始化之后,可直接根据文字大小生成覆盖该3D文字大小的背景板,也可以是在3D文字和3D图标均完成初始化后再根据文字大小生成覆盖该3D文字大小的背景板,具体本申请对生成背景板的时刻不做限定,在图6中,示意的是背景板在3D文字和3D图标均完成初始化后再生成。然后根据终端设备相机位点的方向(即携带该终端设备的用户视线方向),确定3D文字和3D图标的显示方向,再在显示方向调整上可以根据相机的朝向让3D文字、分类模型的法线方向与视线方向一致,或者根据3D POI的自身方向和位置,进行显示翻转调整,具体此处不做限定。最后,对生成的3D文字、3D图标和背景板的相对位置进行调整,至此该POI对应的3D显示信息设计完成。
这里需要注意的是,在本申请的一些实施方式中,终端设备根据POI对应的数据生成3D显示信息的过程还可以考虑目标三维坐标在构建的三维场景中的显示位置。作为一种示例,在构建的三维场景中,为了POI看的更清楚,那么显示位置在远处的POI的显示信息中的3D文字和/或3D图标可大一些,而显示位置在近处的POI的显示信息中的3D文字和/或3D图标可小一些,调大/调小的比例可基于显示位置与相机位点之间的距离来设定,此 处对此不予赘述。作为另一示例,在构建的三维场景中,为了与实际场景更融合,也可以是显示位置在远处的POI的显示信息中的3D文字和/或3D图标可小一些,而显示位置在近处的POI的显示信息中的3D文字和/或3D图标可大一些,调大/调小的比例也可基于显示位置与相机位点之间的距离来设定,此处对此不予赘述。
403、终端设备生成第一3D显示信息的第一横截面,并对第一横截面进行采样,得到至少一个采样点。
终端设备在生成与第一POI对应的第一3D显示信息之后,将进一步生成该第一3D显示信息的横截面(可称为第一横截面),并对该第一横截面进行采样,得到至少一个采样点。
需要说明的是,在本申请的一些实施方式中,终端设备对该第一横截面进行采样的方式可以是随机采样,采样点的数量n(如,3个、5个、8个等)也可以预设;也可以是按照预设规则采样,例如,间隔多远采样一次、多大面积内采样一次;也可以是对第一横截面的特殊点进行采样,例如,第一横截面的角点、中心点等,具体本申请对如何采样得到至少一个采样点的方式不做限定。在本申请实施例中,一种典型的采样方式是将第一横截面的4个角点作为采样点。
404、在终端设备的相机位点与采样点之间的至少一条连线穿过第二横截面的情况下,终端设备在三维场景中对第一3D显示信息进行调整,其中,第二横截面为与第二POI对应的第二3D显示信息的横截面,第二POI为三维场景中不同于第一POI的其他任意一个POI。
终端设备在对第一横截面进行采样得到至少一个采样点之后,会进一步判断该终端设备的相机位点与采样点之间的连线是否穿过第二横截面,其中,该第二横截面为与第二POI对应的第二3D显示信息的横截面,第二POI为构建的三维场景中不同于第一POI的其他任意一个POI。若终端设备判断的结果是终端设备的相机位点与采样点之间的至少一条连线穿过第二横截面,例如,假设采样点为3个,相机位点与每个采样点之间都可对应有一条连线,则共有3条连线,假设这3条连线中至少存在1条穿过了构建的三维场景中其他POI的横截面,说明该第一横截面被其他横截面遮挡了,那么终端设备就需在构建的三维场景中对第一3D显示信息进行调整。
作为一种示例,图7提供了3D显示信息被遮挡的一个示意图,当场景中多个POI各自对应的3D显示信息同时显示时,可能会出现覆盖的情况,如图7中“星巴克臻选”的显示内容(即上述所述的第二3D显示信息)遮挡了“因味茶WE”的显示内容(即上述所述的第一3D显示信息),若没有进行调整,用户在该终端设备屏幕上将只会看到部分的“因味茶WE”,用户在理解时可能会出现歧义。
需要说明的是,在本申请的一些实施方式中,若终端设备的相机位点与采样点之间的至少一条连线穿过第二横截面,那么终端设备的调整方式可以包括但不限于:
a、终端设备在构建的三维场景中删除该第一3D显示信息。
b、终端设备将第一3D显示信息按照预设比例进行缩小,直至终端设备的相机位点与采样点之间的连线均没有穿过第二横截面,例如,可以按照预设梯度缩小至原来的80%、60%等。
c、终端设备将第一3D显示信息的显示位置朝远离第二3D显示信息的显示位置的方向进行调整,直至终端设备的相机位点与采样点之间的连线均没有穿过第二横截面。
在本申请实施例中,调整的目的是为了保证构建的三维场景中3D显示信息的完整性,避免用户由于在屏幕上只看到部分的POI内容而产生歧义。
需要说明的是,在本申请实施例中,除了可以基于相机位点与采样点之间的连线是否穿过其他横截面来判断第一3D显示信息是否被遮挡外,还可以基于其他方式判断第一3D显示信息是否被遮挡,例如,可通过判断第一横截面的4个角点是否可见(即判断4个角点中的任意一个角点与相机位点的连线是否存在穿透了其他横截面的情况)来判断,具体地,在终端设备的相机位点与采样的4个角点之间至少存在一条连线穿过第二横截面的情况下,终端设备基于这4个角点之间的线段以及位于该线段上的目标点来计算第一横截面的被遮挡面积,之后,再判断被遮挡面积占第一横截面总面积的比值,若被遮挡面积与第一横截面的面积之间的比值达到预设阈值,则认为第一3D显示信息被遮挡的过多,终端设备就要在构建的三维场景中对该第一3D显示信息进行调整。
需要说明的是,在本申请的一些实施方式中,终端设备基于第一横截面的4个角点之间的线段以及位于该线段上的目标点来计算第一横截面的被遮挡面积的一种实现方式可如图8所示,若第一横截面的相邻的角点可见,则表明这2个相邻角点之间的线段是可见的;若相邻的2个角点中,一个角点可见而另一个角点不可见,则说明这2个相邻角点之间的线段是不可见的,在这种情况下,可在这2个相邻角点上通过二分法取目标点(也可以是其他选取方法,此处不做限定),并将不可见的那个角点更新为该选取的目标点,继续重复执行上述过程,直至在该线段上确定临界点(达到真实临界点的容许误差范围内的点都可算作本申请所述的临界点,此处不做限定),如图8中的①、②就是确定的临界点,其中图8中的左边为被遮挡部分,右边为未遮挡部分。之后,终端设备计算被遮挡的面积与整体第一横截面的面积大小的比值,若比值未超过预设阈值,则认为被遮挡面积小,整体上该第一3D显示信息都可见,可以保留;若比值超过预设阈值,则认为被遮挡面积大,继续保留可能使得用户在理解上产生歧义,此时就需对该第一3D显示信息进行调整。
还需要说明的是,在本申请的一些实施方式中,若第一横截面的被遮挡面积与第一横截面的面积之间的比值达到了预设阈值,那么终端设备的调整方式可以包括但不限于:
a、终端设备在构建的三维场景中删除该第一3D显示信息。
b、终端设备将第一3D显示信息按照预设比例进行缩小,直至第一横截面的被遮挡面积与第一横截面的面积之间的比值未超过预设阈值,例如,可以按照预设梯度缩小至原来的80%、60%等。
c、终端设备将第一3D显示信息的显示位置朝远离第二3D显示信息的显示位置的方向进行调整,直至第一横截面的被遮挡面积与第一横截面的面积之间的比值未超过预设阈值。
在本申请实施例中,调整的目的是为了保证构建的三维场景中3D显示信息的整体完整性,避免用户由于在屏幕上只看到未被遮挡部分的POI内容而产生歧义。
在本申请上述实施方式中,基于POI对应的数据生成3D显示信息,该3D显示信息包 括3D文字以及3D图标,优化了已有POI内容显示不立体的问题,提高了用户使用时的沉浸感,并且,在三维场景中根据POI对应的3D显示信息的遮挡关系(三维场景中多个3D显示信息同时显示可能会出现某个或多个3D显示信息被遮挡的情况)对被遮挡的POI对应的3D显示信息进行调整,避免用户在浏览时由于只看到部分的3D显示信息而产生歧义。
为便于理解上述图4对应实施方式所描述的过程,下面以AR/VR的SDK为三维渲染引擎Unity软件为例进行示意,Unity软件提供封装后的3D渲染管线,提供碰撞检测和三维渲染等功能,另外加载三维场景数据;按照上述图4对应实施例中介绍的计算过程,生成POI的数据,并提供位置服务和POI在三维场景下显示应用。本申请实施例为了POI在三维场景下的显示,具体实施步骤如下:
步骤1、前期POI对应的数据生成,生成的过程如图9所示,此次不予赘述,本步骤在获取采集设备的相机位置姿态后进行。
步骤2、生成包括3D文字、3D图标和背景板的3D显示信息,并根据POI内容的显示设计计算其内容的适应布局,生成过程如图10所示,此处不予赘述。本步骤在POI数据提取完成形成位置服务后,用户在终端设备上体验3D POI时开始执行。
步骤3、3D显示信息的遮挡分析和调整。根据生成的3D显示信息的横截面,判断横截面上的采样点是否在终端设备的相机上可见来分析3D显示信息的遮挡,由不同的遮挡判断规则确定3D显示信息的可见性。在本申请实施例中,具体有如下两种判断规则:
规则一、如图11所示,若横截面上的采样点存在不可见(存在遮挡),则选择在构建的三维场景中调整该3D显示信息,例如,剔除被遮挡的3D显示信息(图11示意的是该方式),或,等比例缩小被遮挡的3D显示信息,或,移动被遮挡的3D显示信息。
规则二、如图12所示,根据横截面被遮区域范围的大小,判断是否要在构建的三维场景中调整该3D显示信息,若横截面被遮区域范围超过预设阈值,则调整,反之则不调整,图12示意的调整方式是是否剔除。
为了对本申请实施例所带来的有益效果有更为直观的认识,以下对本申请实施例所带来的技术效果作进一步的对比。如图13所示,图13为本申请实施例提供的本申请实施例方法与现有技术的结果对比图,其中,图13中的(a)子示意图为本申请实施例方法的显示结果,图13中的(b)子示意图为现有技术的显示结果,由图13可知,在本发明将POI的3D显示信息在三维场景中以3D文字和3D图标进行融合显示,给用户更好的浏览体验,3D显示信息与标注的三维结构实体融合度更好,用户能简单的将3D显示信息与被标注的三维实体进行关联,而且POI内容能够提供给用户远近的变化,并且能够随着用户的视线进行显示调整。进一步地,在AR/VR场景中利用本申请实施例方法有如下特点:1)用户在浏览时当前帧的POI内容数量不能过多,按照与用户的距离、遮挡关系和POI的权重进行显示的优先级排序。2)可以设计3D文字和三维符号不同的显示组合,自定义表达三维结构实体特征和风格。
在上述实施例的基础上,为了更好的实施本申请实施例的上述方案,下面还提供用于实施上述方案的相关设备。具体参阅图14,图14为本申请实施例提供的一种终端设备的示意图,该终端设备1400具体可以包括:获取模块1401,用于获取三维场景中第一POI 对应的第一数据,其中,该第一数据包括该第一POI在该三维场景中的目标三维坐标以及该第一POI的标识,该第一POI为在该三维场景中的任意一个POI;生成模块1402,用于根据该第一数据生成第一3D显示信息,该第一3D显示信息包括与该标识对应的3D文字、与该标识对应的3D图标、该3D文字的背景板中的至少一项,该第一3D显示信息在该三维场景中的显示位置根据该目标三维坐标确定;采样模块1403,用于生成该第一3D显示信息的第一横截面,并对该第一横截面进行采样,得到至少一个采样点;调整模块1404,用于在该终端设备1400的相机位点与该采样点之间的至少一条连线穿过第二横截面的情况下,在该三维场景中对该第一3D显示信息进行调整,其中,该第二横截面为与第二POI对应的第二3D显示信息的横截面,该第二POI为该三维场景中不同于该第一POI的其他任意一个POI。
在本申请上述实施方式中,终端设备1400基于POI对应的数据生成3D显示信息,该3D显示信息可以包括3D文字、3D图标、3D文字的背景板中的至少一项,优化了已有POI内容显示不立体的问题,提高了用户使用时的沉浸感,并且,在三维场景中根据POI对应的3D显示信息的遮挡关系(三维场景中多个3D显示信息同时显示可能会出现某个或多个3D显示信息被遮挡的情况)对被遮挡的POI对应的3D显示信息进行调整,避免用户在浏览时由于只看到部分的3D显示信息而产生歧义。
在一种可能的设计中,该生成模块1402,具体用于:基于3D文字库生成与该标识对应的3D文字,并根据该3D文字的大小生成该3D文字的背景板;根据该标识生成与该标识对应的3D图标;对该3D文字、该背景板以及该3D图标进行相对位置调整,得到该第一3D显示信息。
在本申请上述实施方式中,针对POI在三维场景中显示的三维连贯性不足、沉浸感弱的问题,具体阐述了生成模块1402如何用于生成包括3D文字、3D图标以及背景板的3D显示信息,优化了POI内容在三维场景中的显示方式,提高了用户使用时的沉浸感。
在一种可能的设计中,该生成模块1402,具体用于:根据该标识确定与该标识对应的分类编码,并根据该分类编码与图标之间的第一映射关系生成该3D图标,其中,该分类编码包括于该第一数据;或,提取该标识的关键特征,并根据该关键特征与图标之间的第二映射关系生成该3D图标。
在本申请上述实施方式中,具体阐述了生成模块1402的几种生成3D图标的实现方式,具有灵活性和广泛适用性。
在一种可能的设计中,该采样模块1403,具体用于:将该第一横截面的4个角点作为采样点。
在本申请上述实施方式中,具体阐述了采样模块1403的一种典型的采样方式,具备可实现性。
在一种可能的设计中,该终端设备1400还包括:计算模块1405,用于在该终端设备1400的相机位点与该4个角点之间至少存在一条连线穿过该第二横截面的情况下,基于该4个角点之间的线段以及位于该线段上的目标点计算该第一横截面的被遮挡面积;该调整模块1404,还用于在该被遮挡面积与该第一横截面的面积之间的比值达到预设阈值的情况 下,在该三维场景中对该第一3D显示信息进行调整。
在本申请上述实施方式中,具体阐述了计算模块1405还会计算3D显示信息对应的横截面的被遮挡面积,并计算被遮挡的面积与整体第一横截面的面积大小的比值,若比值未超过预设阈值,则认为被遮挡面积小,整体上该第一3D显示信息都可见,可以保留;若比值超过预设阈值,则认为被遮挡面积大,继续保留可能使得用户在理解上产生歧义,此时就需对该第一3D显示信息进行调整。调整的目的是为了保证构建的三维场景中3D显示信息的整体完整性,避免用户由于在屏幕上只看到未被遮挡部分的POI内容而产生歧义。
在一种可能的设计中,该调整模块1404,具体用于:在该三维场景中删除该第一3D显示信息;或,将该第一3D显示信息按照预设比例进行缩小;或,将该第一3D显示信息的显示位置朝远离该第二3D显示信息的显示位置的方向进行调整。具体地,若终端设备1400的相机位点与采样点之间的至少一条连线穿过第二横截面,那么调整模块1404的调整方式可以包括但不限于:a、在构建的三维场景中删除该第一3D显示信息。b、将第一3D显示信息按照预设比例进行缩小,直至终端设备的相机位点与采样点之间的连线均没有穿过第二横截面,例如,可以按照预设梯度缩小至原来的80%、60%等。c、将第一3D显示信息的显示位置朝远离第二3D显示信息的显示位置的方向进行调整,直至终端设备1400的相机位点与采样点之间的连线均没有穿过第二横截面。若第一横截面的被遮挡面积与第一横截面的面积之间的比值达到了预设阈值,那么调整模块1404的调整方式可以包括但不限于:a、在构建的三维场景中删除该第一3D显示信息。b、将第一3D显示信息按照预设比例进行缩小,直至第一横截面的被遮挡面积与第一横截面的面积之间的比值未超过预设阈值,例如,可以按照预设梯度缩小至原来的80%、60%等。c、将第一3D显示信息的显示位置朝远离第二3D显示信息的显示位置的方向进行调整,直至第一横截面的被遮挡面积与第一横截面的面积之间的比值未超过预设阈值。
在本申请上述实施方式中,具体阐述了调整模块1404在构建的三维场景中对第一3D显示信息进行调整的几种实现方式,简单易操作,具备灵活性。
在一种可能的设计中,该第一POI在该三维场景中的目标三维坐标由该第一POI的初始三维坐标沿该第一POI的立面的法线方向进行位置延伸得到,该初始三维坐标为通过前方交会方式或射线追踪方式得到的像素坐标集合对应的三维坐标,该像素坐标集合为通过OCR获取到的该第一POI在图片中的像素坐标的集合。
在本申请上述实施方式中,将基于前方交会方式或射线追踪方式得到的初始三维坐标沿POI的立面的法线方向进行位置延伸得到目标三维坐标,从而可避免3D显示信息与构建的三维场景中的实体(如,建筑物)发生碰撞,提高了视觉体验。
在一种可能的设计中,该获取模块1401,具体用于:向服务器发送该终端设备1400当前所处位置以及该终端设备1400的朝向,以使得该服务器确定与该当前所处位置对应的三维场景数据以及第一POI对应的第一数据;接收由该服务器发送的该三维场景数据以及该第一数据,并基于该三维场景数据构建该三维场景。
在本申请上述实施方式中,阐述了获取模块1401是实时从服务器接收当前所处位置和朝向对应的三维场景数据(用于构建三维场景)和POI数据的,避免终端设备上存储过多 数据造成的数据冗余。
需要说明的是,终端设备1400中各模块/单元之间的信息交互、执行过程等内容,与本申请中上述方法实施例基于同一构思,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
接下来介绍本申请实施例提供的另一种终端设备,请参阅图15,图15为本申请实施例提供的终端设备的一种结构示意图,终端设备1500上可以部署有图14对应实施例中所描述的终端设备1400,用于实现图14对应实施例中终端设备1400的功能,具体的,终端设备1500由一个或多个服务器实现,终端设备1500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1522和存储器1532,一个或一个以上存储应用程序1542或数据1544的存储介质1530(例如一个或一个以上海量存储设备)。其中,存储器1532和存储介质1530可以是短暂存储或持久存储。存储在存储介质1530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对终端设备1500中的一系列指令操作。更进一步地,中央处理器1522可以设置为与存储介质1530通信,在终端设备1500上执行存储介质1530中的一系列指令操作。
终端设备1500还可以包括一个或一个以上电源1526,一个或一个以上有线或无线网络接口1550,一个或一个以上输入输出接口1558,和/或,一个或一个以上操作系统1541,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
本申请实施例中,中央处理器1522,用于执行图4对应实施例中的终端设备执行的步骤。例如,中央处理器1522可以用于:首先,获取三维场景中第一POI对应的数据(可称为第一数据),该第一数据包括第一POI在所构建的三维场景中的目标三维坐标以及该第一POI的标识,该第一POI为构建的三维场景中的任意一个POI,例如,假设终端设备在当前时刻、当前位置构建的三维场景中包括有3个POI,那么第一POI指的就是这3个POI中的任意一个。在获取到三维场景中第一POI对应的第一数据之后,进一步根据该第一数据生成对应的3D显示信息(可称为第一3D显示信息),其中,该第一3D显示信息可以包括与该标识对应的3D文字、与该标识对应的3D图标、该3D文字的背景板中的至少一项,需要说明的是,该第一3D显示信息在三维场景中的显示位置是由第一数据中包括的第一POI的目标三维坐标确定的。在生成与第一POI对应的第一3D显示信息之后,再生成该第一3D显示信息的横截面(可称为第一横截面),并对该第一横截面进行采样,得到至少一个采样点。在对第一横截面进行采样得到至少一个采样点之后,会进一步判断该终端设备的相机位点与采样点之间的连线是否穿过第二横截面,其中,该第二横截面为与第二POI对应的第二3D显示信息的横截面,第二POI为该三维场景中不同于第一POI的其他任意一个POI。若终端设备判断的结果是终端设备的相机位点与采样点之间的至少一条连线穿过第二横截面,例如,假设采样点为3个,相机位点与每个采样点之间都可对应有一条连线,则共有3条连线,假设这3条连线中至少存在1条穿过了三维场景中其他POI的横截面,说明该第一横截面被其他横截面遮挡了,那么就需在该三维场景中对第一3D显示信息进行调整。
需要说明的是,中央处理器1522执行上述各个步骤的具体方式,与本申请中图4对应 的方法实施例基于同一构思,其带来的技术效果也与本申请上述实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,训练设备,或者网络设备等)执行本申请各个实施例所述的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、训练设备或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、训练设备或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的训练设备、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。

Claims (20)

  1. 一种POI的显示方法,其特征在于,包括:
    终端设备获取三维场景中第一兴趣点(POI)对应的第一数据,其中,所述第一数据包括所述第一POI在所述三维场景中的目标三维坐标以及所述第一POI的标识,所述第一POI为在所述三维场景中的任意一个POI;
    所述终端设备根据所述第一数据生成第一三维(3D)显示信息,所述第一3D显示信息包括与所述标识对应的3D文字、与所述标识对应的3D图标以及所述3D文字的背景板中的至少一项,所述第一3D显示信息在所述三维场景中的显示位置根据所述目标三维坐标确定;
    所述终端设备生成所述第一3D显示信息的第一横截面,并对所述第一横截面进行采样,得到至少一个采样点;
    在所述终端设备的相机位点与所述采样点之间的至少一条连线穿过第二横截面的情况下,所述终端设备在所述三维场景中对所述第一3D显示信息进行调整,其中,所述第二横截面为与第二POI对应的第二3D显示信息的横截面,所述第二POI为所述三维场景中不同于所述第一POI的其他任意一个POI。
  2. 根据权利要求1所述的方法,其特征在于,所述终端设备根据所述第一数据生成第一三维(3D)显示信息包括:
    所述终端设备基于3D文字库生成与所述标识对应的3D文字,并根据所述3D文字的大小生成所述3D文字的背景板;
    所述终端设备根据所述标识生成与所述标识对应的3D图标;
    所述终端设备对所述3D文字、所述背景板以及所述3D图标进行相对位置调整,得到所述第一3D显示信息。
  3. 根据权利要求2所述的方法,其特征在于,所述终端设备根据所述标识生成与所述标识对应的3D图标包括:
    所述终端设备根据所述标识确定与所述标识对应的分类编码,并根据所述分类编码与图标之间的第一映射关系生成所述3D图标,其中,所述分类编码包括于所述第一数据;
    或,
    所述终端设备提取所述标识的关键特征,并根据所述关键特征与图标之间的第二映射关系生成所述3D图标。
  4. 根据权利要求1-3中任一项所述的方法,其特征在于,所述对所述第一横截面进行采样,得到至少一个采样点包括:
    将所述第一横截面的4个角点作为采样点。
  5. 根据权利要求4所述的方法,其特征在于,所述方法还包括:
    在所述终端设备的相机位点与所述4个角点之间至少存在一条连线穿过所述第二横截面的情况下,所述终端设备基于所述4个角点之间的线段以及位于所述线段上的目标点计算所述第一横截面的被遮挡面积;
    在所述被遮挡面积与所述第一横截面的面积之间的比值达到预设阈值的情况下,所述 终端设备在所述三维场景中对所述第一3D显示信息进行调整。
  6. 根据权利要求1-5中任一项所述的方法,其特征在于,所述终端设备在所述三维场景中对所述第一3D显示信息进行调整包括:
    所述终端设备在所述三维场景中删除所述第一3D显示信息;
    或,
    所述终端设备将所述第一3D显示信息按照预设比例进行缩小;
    或,
    所述终端设备将所述第一3D显示信息的显示位置朝远离所述第二3D显示信息的显示位置的方向进行调整。
  7. 根据权利要求1-6中任一项所述的方法,其特征在于,所述第一POI在所述三维场景中的目标三维坐标由所述第一POI的初始三维坐标沿所述第一POI的立面的法线方向进行位置延伸得到,所述初始三维坐标为通过前方交会方式或射线追踪方式得到的像素坐标集合对应的三维坐标,所述像素坐标集合为通过光学字符识别(OCR)获取到的所述第一POI在图片中的像素坐标的集合。
  8. 根据权利要求1-7中任一项所述的方法,其特征在于,所述终端设备获取三维场景中第一兴趣点(POI)对应的第一数据包括:
    所述终端设备向服务器发送所述终端设备当前所处位置以及所述终端设备的朝向,以使得所述服务器确定与所述当前所处位置对应的三维场景数据以及第一POI对应的第一数据;
    所述终端设备接收由所述服务器发送的所述三维场景数据以及所述第一数据,并基于所述三维场景数据构建所述三维场景。
  9. 一种终端设备,其特征在于,包括:
    获取模块,用于获取三维场景中第一兴趣点(POI)对应的第一数据,其中,所述第一数据包括所述第一POI在所述三维场景中的目标三维坐标以及所述第一POI的标识,所述第一POI为在所述三维场景中的任意一个POI;
    生成模块,用于根据所述第一数据生成第一三维(3D)显示信息,所述第一3D显示信息包括与所述标识对应的3D文字、与所述标识对应的3D图标以及所述3D文字的背景板中的至少一项,所述第一3D显示信息在所述三维场景中的显示位置根据所述目标三维坐标确定;
    采样模块,用于生成所述第一3D显示信息的第一横截面,并对所述第一横截面进行采样,得到至少一个采样点;
    调整模块,用于在所述终端设备的相机位点与所述采样点之间的至少一条连线穿过第二横截面的情况下,在所述三维场景中对所述第一3D显示信息进行调整,其中,所述第二横截面为与第二POI对应的第二3D显示信息的横截面,所述第二POI为所述三维场景中不同于所述第一POI的其他任意一个POI。
  10. 根据权利要求9所述的设备,其特征在于,所述生成模块,具体用于:
    基于3D文字库生成与所述标识对应的3D文字,并根据所述3D文字的大小生成所述 3D文字的背景板;
    根据所述标识生成与所述标识对应的3D图标;
    对所述3D文字、所述背景板以及所述3D图标进行相对位置调整,得到所述第一3D显示信息。
  11. 根据权利要求10所述的设备,其特征在于,所述生成模块,具体还用于:
    根据所述标识确定与所述标识对应的分类编码,并根据所述分类编码与图标之间的第一映射关系生成所述3D图标,其中,所述分类编码包括于所述第一数据;
    或,
    提取所述标识的关键特征,并根据所述关键特征与图标之间的第二映射关系生成所述3D图标。
  12. 根据权利要求9-11中任一项所述的设备,其特征在于,所述采样模块,具体用于:
    将所述第一横截面的4个角点作为采样点。
  13. 根据权利要求12所述的设备,其特征在于,所述设备还包括:
    计算模块,用于在所述终端设备的相机位点与所述4个角点之间至少存在一条连线穿过所述第二横截面的情况下,基于所述4个角点之间的线段以及位于所述线段上的目标点计算所述第一横截面的被遮挡面积;
    所述调整模块,还用于在所述被遮挡面积与所述第一横截面的面积之间的比值达到预设阈值的情况下,在所述三维场景中对所述第一3D显示信息进行调整。
  14. 根据权利要求9-13中任一项所述的设备,其特征在于,所述调整模块,具体用于:
    在所述三维场景中删除所述第一3D显示信息;
    或,
    将所述第一3D显示信息按照预设比例进行缩小;
    或,
    将所述第一3D显示信息的显示位置朝远离所述第二3D显示信息的显示位置的方向进行调整。
  15. 根据权利要求9-14中任一项所述的设备,其特征在于,所述第一POI在所述三维场景中的目标三维坐标由所述第一POI的初始三维坐标沿所述第一POI的立面的法线方向进行位置延伸得到,所述初始三维坐标为通过前方交会方式或射线追踪方式得到的像素坐标集合对应的三维坐标,所述像素坐标集合为通过光学字符识别(OCR)获取到的所述第一POI在图片中的像素坐标的集合。
  16. 根据权利要求9-15中任一项所述的设备,其特征在于,所述获取模块,具体用于:
    向服务器发送所述终端设备当前所处位置以及所述终端设备的朝向,以使得所述服务器确定与所述当前所处位置对应的三维场景数据以及第一POI对应的第一数据;
    接收由所述服务器发送的所述三维场景数据以及所述第一数据,并基于所述三维场景数据构建所述三维场景。
  17. 一种终端设备,包括处理器和存储器,所述处理器与所述存储器耦合,其特征在于,
    所述存储器,用于存储程序;
    所述处理器,用于执行所述存储器中的程序,使得所述终端设备执行如权利要求1-8中任一项所述的方法。
  18. 一种计算机可读存储介质,包括程序,当其在计算机上运行时,使得计算机执行如权利要求1-8中任一项所述的方法。
  19. 一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如权利要求1-8中任一项所述的方法。
  20. 一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行如权利要求1-8中任一项所述的方法。
PCT/CN2022/101799 2021-06-30 2022-06-28 一种poi的显示方法及设备 WO2023274205A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110741983.4A CN115544390A (zh) 2021-06-30 2021-06-30 一种poi的显示方法及设备
CN202110741983.4 2021-06-30

Publications (1)

Publication Number Publication Date
WO2023274205A1 true WO2023274205A1 (zh) 2023-01-05

Family

ID=84690374

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/101799 WO2023274205A1 (zh) 2021-06-30 2022-06-28 一种poi的显示方法及设备

Country Status (2)

Country Link
CN (1) CN115544390A (zh)
WO (1) WO2023274205A1 (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104102678A (zh) * 2013-04-15 2014-10-15 腾讯科技(深圳)有限公司 增强现实的实现方法以及实现装置
US20140354629A1 (en) * 2013-06-01 2014-12-04 Apple Inc. Intelligently placing labels
CN104995666A (zh) * 2012-12-21 2015-10-21 Metaio有限公司 用于在真实环境中表示虚拟信息的方法
CN105183862A (zh) * 2015-09-11 2015-12-23 百度在线网络技术(北京)有限公司 一种poi的标注方法及装置
CN108984604A (zh) * 2017-06-02 2018-12-11 苹果公司 场地地图应用和系统
CN110379019A (zh) * 2013-09-24 2019-10-25 苹果公司 在真实环境的视图中表示兴趣点的方法以及移动设备
CN110609878A (zh) * 2018-06-14 2019-12-24 百度在线网络技术(北京)有限公司 兴趣点信息展示方法、装置、服务器和存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104995666A (zh) * 2012-12-21 2015-10-21 Metaio有限公司 用于在真实环境中表示虚拟信息的方法
CN104102678A (zh) * 2013-04-15 2014-10-15 腾讯科技(深圳)有限公司 增强现实的实现方法以及实现装置
US20140354629A1 (en) * 2013-06-01 2014-12-04 Apple Inc. Intelligently placing labels
CN110379019A (zh) * 2013-09-24 2019-10-25 苹果公司 在真实环境的视图中表示兴趣点的方法以及移动设备
CN105183862A (zh) * 2015-09-11 2015-12-23 百度在线网络技术(北京)有限公司 一种poi的标注方法及装置
CN108984604A (zh) * 2017-06-02 2018-12-11 苹果公司 场地地图应用和系统
CN110609878A (zh) * 2018-06-14 2019-12-24 百度在线网络技术(北京)有限公司 兴趣点信息展示方法、装置、服务器和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CHEN HONG-SHUN, QIAO-XUAN ZOU: "3D real scene campus navigation system based on oblique photography of UAV", XINXI JISHU = INFORMATION TECHNOLOGY, XINXI CHANYEBU DIANZI XINXI ZHONGXIN, CN, no. 10, 22 October 2020 (2020-10-22), CN , XP093019241, ISSN: 1009-2552, DOI: 10.13274/j.cnki.hdzj.2020.10.017 *

Also Published As

Publication number Publication date
CN115544390A (zh) 2022-12-30

Similar Documents

Publication Publication Date Title
US9317133B2 (en) Method and apparatus for generating augmented reality content
RU2559741C2 (ru) Способ и устройство для аннотирования информации о точках интереса
JP6312715B2 (ja) モバイルデバイスを用いるナビゲーションのための方向性ビュー及びx線ビュー技法
US8988426B2 (en) Methods and apparatus for rendering labels based on occlusion testing for label visibility
WO2021018214A1 (zh) 虚拟对象处理方法及装置、存储介质和电子设备
US11367257B2 (en) Information processing apparatus, information processing method, and storage medium
KR101583286B1 (ko) 공간 정보를 제공하기 위한 증강 현실 제공 방법과 시스템, 그리고 기록 매체 및 파일 배포 시스템
Kido et al. Assessing future landscapes using enhanced mixed reality with semantic segmentation by deep learning
KR20150075532A (ko) 증강 현실 제공 장치 및 방법
KR101600456B1 (ko) 공간 정보를 제공하기 위한 증강 현실 제공 방법과 시스템, 그리고 기록 매체 및 파일 배포 시스템
EP4050305A1 (en) Visual positioning method and device
KR102108488B1 (ko) 컨텍스트적 지도 뷰
CN113892129B (zh) 创建三维外观的虚拟视差
CN114461064B (zh) 虚拟现实交互方法、装置、设备和存储介质
WO2022110785A1 (zh) 定位方法及装置、电子设备、存储介质、计算机程序产品、计算机程序
CN116858215B (zh) 一种ar导航地图生成方法及装置
CN112468970A (zh) 一种基于增强现实技术的校园导览方法
WO2023274205A1 (zh) 一种poi的显示方法及设备
CN112307363A (zh) 虚实融合展示方法及装置、电子设备和存储介质
KR20220155245A (ko) 포지셔닝 방법, 버전 맵 생성 방법 및 장치
EP4170588A2 (en) Video photographing method and apparatus, and device and storage medium
WO2021244114A1 (zh) 视觉定位方法和装置
Wang et al. A markerless augmented reality mobile navigation system with multiple targets display function
US11836437B2 (en) Character display method and apparatus, electronic device, and storage medium
CN114417204A (zh) 信息生成方法、装置和电子设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22832019

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE