Data updating method and device, electronic equipment and computer readable storage medium
By identifying the identity information of markers and updating the bound data, the problem of fixed virtual image data in VR/AR devices is solved, enabling flexible display of virtual images under the same marker and improving data update efficiency.
Patent Information
- Application Number
- CN201810814635.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2018-07-23
- Publication Date
- 2025-11-21
- Estimated Expiration
- 2038-07-23
AI Technical Summary
In existing technologies, VR/AR devices cannot effectively update virtual image data when using the same marker, requiring the marker to be changed or the application to be switched, which is cumbersome.
By identifying the identity information of the marker, the system obtains the binding data replacement instruction and updates the virtual image data bound to it without changing the marker.
It enables the display of different virtual images under the same marker, improves data update efficiency, and is suitable for various virtual reality and augmented reality scenarios.
Smart Images

Figure CN110750225B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of virtual reality, and more particularly, to a data updating method and device, an electronic device, and a computer readable storage medium. BACKGROUND
[0002] With the development of virtual reality and augmented reality technologies, electronic devices related to virtual reality and augmented reality have gradually entered people's daily life. When people use AR / VR devices, after a marker is collected by a camera assembly on the device, a virtual image can be displayed on a corresponding position on a display screen through corresponding image processing, allowing users to enjoy immersive viewing experiences. SUMMARY
[0003] The present application provides a data updating method, device, electronic device, and computer readable storage medium, which can display different virtual images through the same marker, improving the efficiency of data updating.
[0004] In a first aspect, an embodiment of the present application provides a data updating method, which includes: collecting an image containing a marker; identifying the marker in the image and determining identity information of the marker; obtaining a binding data replacement instruction corresponding to the marker according to the identity information; replacing first data bound to the marker with second data based on the binding data replacement instruction; and displaying a virtual image corresponding to the second data.
[0005] In a second aspect, an embodiment of the present application provides a data updating device, which includes: a collection module configured to collect an image containing a marker; an identification module configured to identify the marker in the image and determine identity information of the marker; an obtaining module configured to obtain a binding data replacement instruction corresponding to the marker according to the identity information; a replacement module configured to replace first data bound to the marker with second data based on the binding data replacement instruction; and a display module configured to display a virtual image corresponding to the second data.
[0006] In a third aspect, an embodiment of the present application provides an electronic device, which includes a display, a memory, and a processor, the display and the memory being coupled to the processor, and the memory storing instructions that, when executed by the processor, cause the processor to perform the method of the first aspect.
[0007] In a fourth aspect, an embodiment of the present application provides a computer readable storage medium having program codes executable by a processor, the program codes causing the processor to perform the method of the first aspect.
[0008] The data updating method and device, the electronic device and the computer readable storage medium provided by the embodiments of the present application first collect an image containing a marker; then identify the marker in the image and determine the identity information of the marker; then acquire a binding data replacement instruction corresponding to the marker according to the identity information; and replace first data bound to the marker with second data based on the binding data replacement instruction; and finally display a virtual image corresponding to the second data. Compared with the prior art, the embodiments of the present application can update the data bound to the marker without replacing a new marker, and can display different virtual images through the same marker, thereby improving the efficiency of data updating. BRIEF DESCRIPTION OF DRAWINGS
[0009] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.
[0010] Figure 1 An application scenario diagram of a display method of a virtual object of the embodiments of the present application is shown;
[0011] Figure 2 A structural block diagram of an electronic device of the embodiments of the present application is shown;
[0012] Figure 3 An interaction diagram of an electronic device and a server of the embodiments of the present application is shown;
[0013] Figure 4 A flowchart of a data updating method provided by the embodiments of the present application is shown;
[0014] Figure 5 A flowchart of another data updating method provided by the embodiments of the present application is shown;
[0015] Figure 6 A module block diagram of a data updating device provided by the embodiments of the present application is shown;
[0016] Figure 7 A module block diagram of another data updating device provided by the embodiments of the present application is shown. DETAILED DESCRIPTION
[0017] The technical solutions in the embodiments of the present application will be described clearly and completely in combination with the drawings in the embodiments of the present application. Obviously, the described embodiments are only some embodiments of the present application, not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor are within the scope of protection of the present application.
[0018] With the development of VR (Virtual Reality, virtual reality), AR (Augmented Reality, augmented reality) and other technologies, VR / AR related electronic devices gradually enter people's daily life. When people use VR / AR devices, markers (also known as markers or tags) in the real environment can be collected through the camera components on the device, and after corresponding image processing, the virtual image bound to the marker can be displayed on the corresponding position of the display screen, allowing users to enjoy the science fiction experience.
[0019] However, the inventors found in research that the virtual image data displayed by the current marker for a single application is fixed, and the virtual image data is usually pre-stored in the application program. For example, when an application program collects a certain marker, the medical organ is displayed on the screen, and when another application program collects the marker, the game scene is displayed. If you want to show different virtual images to users, you need to collect different markers or switch different application programs to collect the same marker, which is cumbersome to operate.
[0020] In order to solve the above problems, the inventors have proposed a data updating method, device, electronic device and computer readable storage medium in the embodiments of the present application after research.
[0021] The data updating method, device, electronic device and storage medium provided by the embodiments of the present application will be described in detail below through specific embodiments.
[0022] Please refer to Figure 1 , which shows the application scenario diagram of the display method of the virtual object provided by the embodiments of the present application, and the application scenario includes a display system 10. The display system 10 includes an electronic device 20 and a marker 30.
[0023] In this embodiment, the electronic device 20 can be a head-mounted display device, a mobile phone, a tablet computer and the like. Please refer to Figure 2 As an implementation manner, the electronic device 20 can include a processor 21, a memory 22, a display device 23 and a camera 24. The memory 22, the display device 23 and the camera 24 are all connected with the processor 21.
[0024] The camera 24 is used to collect the image of the object to be photographed and send it to the processor 21. The camera 24 can be an infrared camera, a color camera, etc., and the specific type of the camera 24 is not limited in the embodiments of the present application.
[0025] The processor 21 can include any appropriate type of general purpose or special purpose microprocessor, digital signal processor, or microcontroller. The processor 24 can be configured to receive data and / or signals from various components of the system via, for example, a network. The processor 21 can also process the data and / or signals to determine one or more operating conditions in the system. For example, the processor 21 generates image data of a virtual world according to pre-stored image data, and sends the image data to the display device for display; the processor 21 can also receive image data sent by a smart terminal or a computer via a wired or wireless network, and generates image data of a virtual world according to the received image data for display; the processor 21 can also recognize and locate according to image data collected by the camera, and determines corresponding display content in the virtual world according to the location information, and sends the display content to the display device 23 for display.
[0026] The memory 22 can be used to store software programs and modules, and the processor 21 executes various functional applications and data processing by running the software programs and modules stored in the memory 22. The memory 22 can include a high-speed random access memory, and can also include a non-volatile memory such as one or more magnetic storage devices, flash memories, or other non-volatile solid-state memories.
[0027] The display device and the camera of the electronic device 20 are connected to an electronic device having a storage function of a memory and a processing function of a processor. It can be understood that the processing performed by the processor in the above embodiments is performed by the processor of the electronic device, and the data stored by the memory in the above embodiments is stored by the memory of the electronic device.
[0028] In the embodiments of the present application, the electronic device 20 can further include a communication module connected to the processor. The communication module is used for communication between the electronic device 20 and other terminals.
[0029] In the embodiments of the present application, the display system 10 further includes a marker 30 placed in the field of view of the camera 24 of the electronic device 20, i.e. the camera 24 can collect an image of the marker 30. The image of the marker 30 is stored in the electronic device 20, and is used to locate the position of the electronic device 20 relative to the marker 30.
[0030] The marker 30 can include at least one sub-marker, which can be a pattern having a certain shape. In an embodiment, each sub-marker can have one or more feature points, where the shape of the feature points is not limited and can be a dot, a ring, a triangle, or other shapes. In the embodiments of the present application, the distribution of the sub-markers in different markers is different, so that each marker 30 can have different identity information. The electronic device 20 can obtain the identity information corresponding to the marker 30 by identifying the sub-markers included in the marker 30. The identity information can be a code or other information that can be used to uniquely identify the marker 30, but is not limited thereto.
[0031] As an embodiment, the outline of the marker 30 can be rectangular, and the shape of the marker 30 can also be other shapes, which are not limited herein. In the embodiments of the present application, the marker 30 can be a pattern that can be recognized and tracked by the electronic device 20. It should be noted that the specific marker 30 is not limited in the embodiments of the present application, as long as the marker can be recognized and tracked by the electronic device 20.
[0032] The electronic device 20 also stores virtual objects corresponding to different markers 30, which can be buildings, scenes, trees, characters, etc.
[0033] When the user uses the electronic device 20, the electronic device 20 can capture a marker image containing the marker 30 when the marker 30 is within the field of view of the electronic device 20. The processor of the electronic device 20 obtains the marker image and related information, recognizes the marker 30, and obtains the position and rotation relationship between the marker 30 and the camera of the electronic device 20, and then obtains the position and rotation relationship of the marker 30 relative to the electronic device 20.
[0034] Please refer to Figure 3 In the embodiments of the present application, the electronic device 20 can also be connected to the server 40 through a network. The client running the AR / VR application on the electronic device 20 and the server 40 running the corresponding AR / VR application on the server 40. As an embodiment, multiple electronic devices 20 can synchronize data through the server 40.
[0035] For the display system described above, the embodiments of the present application provide a display method of a virtual object through the above system. Specifically, please refer to the following embodiments.
[0036] Please refer to Figure 4 , Figure 4A flowchart of a data updating method provided in an embodiment of the present application is shown. The data updating method first acquires an image containing a marker, then identifies the marker in the image and determines the identity information of the marker, then acquires a binding data replacement instruction corresponding to the marker according to the identity information, and replaces first data bound to the marker with second data based on the binding data replacement instruction, and finally displays a virtual image corresponding to the second data bound to the marker. The data bound to the marker can be updated without replacing a new marker, different virtual images can be displayed through the same marker, and the efficiency of data updating is improved. In specific embodiments, the data updating method can be applied to the data updating device 300 shown in Figure 6 and the electronic device 20 Figure 1 configured with the data updating device 300. In the following, the HMD (Head Mount Display) will be taken as an example to be described in detail with respect to the flow shown in Figure 4 . The data updating method described above can specifically include the following steps:
[0037] Step S101: Acquire an image containing a marker.
[0038] In this embodiment, the marker (also referred to as Marker or Tag) can be any graphic or object with identifiable characteristic markers. The marker can be placed in the field of view of the camera of the electronic device, i.e. the camera can acquire the image of the marker. The image of the marker is stored in the electronic device for positioning the position of the electronic device relative to the marker. The marker can include at least one sub-marker, and the sub-marker can be a pattern with a certain shape. In an embodiment, each sub-marker can have one or more feature points, wherein the shape of the feature points is not limited and can be a dot, a ring, a triangle, or other shapes. In the embodiments of the present application, the distribution rules of the sub-markers in different markers are different, so each marker can have different identity information. The electronic device can acquire the identity information corresponding to the marker by identifying the sub-markers contained in the marker. The identity information can be a code or other information that can be used to uniquely identify the marker, but is not limited thereto.
[0039] As an implementation, the outline of the marker can be rectangular, and of course, the shape of the marker can also be other shapes, which are not limited herein. It should be noted that the shape, style, color, number and distribution of the specific marker are not limited in this embodiment, as long as the marker can be recognized and tracked by the electronic device. For example, in other possible embodiments, the marker can also be a bar code, a two-dimensional code or other identifiable graphics.
[0040] Step S102: identify the marker in the image, and determine the identity information of the marker.
[0041] In this embodiment, when the image containing the marker is captured by the camera of the electronic device, the identity information corresponding to the marker can be obtained, that is, the identification of the marker in the image is completed.
[0042] As a way, when each marker contains a plurality of feature points, the number of feature points can be used as the identity information (ID) of each marker. For example, a marker contains a white background and 7 black feature points. When the image containing the marker is captured by the camera of the electronic device, there are 7 black regions in the image with corresponding feature point positions. The number "7" of the black regions can be used as the ID of the marker, that is, the identity information of the marker can be "No. 7".
[0043] It can be understood that in other possible embodiments, the identity information of the marker can also be set according to the color, shape, distribution area and other characteristics of the feature points on the marker. Different markers correspond to different identity information.
[0044] Step S103: obtain the binding data replacement instruction corresponding to the marker according to the identity information.
[0045] In this embodiment, each marker corresponds to its identity information, and each identity information corresponds to the virtual image data bound to the marker. The binding data replacement instruction can be an instruction for changing the virtual image data bound to the marker. After obtaining the identity information of the marker, the binding data replacement instruction corresponding to the marker can be obtained according to the identity information.
[0046] As a way, whether the virtual image data bound to the marker needs to be replaced can be set by the user on the client. For example, the user sets on the client (APP application) that the binding data of the marker with ID "No. 7" needs to be replaced. After the electronic device obtains the identity information of the marker "No. 7", the binding data replacement instruction corresponding to the marker "No. 7" can be generated to replace the virtual image data bound to the marker stored locally.
[0047] As another way, whether the virtual image data bound by the marker needs to be replaced can also be set by the server side and synchronized by the client side to the server side. For example, the server side can set that the binding data of the marker with ID "No. 7" needs to be replaced, and after the electronic device obtains the identity information of the marker "No. 7", the electronic device can query whether the binding data needs to be replaced in the server by using the identity information "No. 7", and when the server feedback result is that the binding data needs to be replaced, a binding data replacement instruction corresponding to the marker can be generated to replace the virtual image data bound by the marker locally stored.
[0048] It can be understood that the server can store the identity information of a plurality of markers and the binding data corresponding to each marker.
[0049] Step S104: replacing the first data bound by the marker with the second data based on the binding data replacement instruction.
[0050] In this embodiment, the electronic device can obtain the binding data that needs to be replaced according to the binding data replacement instruction, that is, the virtual image data bound by the marker after the marker is replaced.
[0051] In this embodiment, the first data can be the virtual image data bound by the marker before the marker is replaced, and the second data can be the virtual image data bound by the marker after the marker is replaced. For example, the first data currently bound by the marker "No. 7" can be virtual image data that can display a virtual object "vase", and after the electronic device obtains the binding data replacement instruction, the second data that needs to be replaced by the marker "No. 7" can be obtained according to the binding data replacement instruction. The second data can be virtual image data that displays a virtual object "cow", and then the first data currently bound by the marker "No. 7" can be replaced with the second data. If the binding data replacement instruction corresponding to "No. 7" contains information that the first data corresponding to the currently bound virtual image "cow" is replaced with the second data corresponding to the virtual image "poster" when the data bound by the marker needs to be replaced next time, at this time, the first data bound by the marker "No. 7" becomes the virtual image data corresponding to the "cow", and the second data bound by the marker after the marker is replaced becomes the virtual image data corresponding to the "poster", that is, the second data when the marker is replaced last time becomes the first data when the marker is replaced this time.
[0052] As one way, the first data bound by the marker before the marker is replaced can be stored locally in the client (which can be a memory of the electronic device), and the second data that needs to be replaced can be originally stored locally in the client, can be obtained by the client from the server side, or can be sent by a certain terminal (which can be a client) to the server side and replaced by the server side, and finally synchronized to each client.
[0053] Step S105: displaying the virtual image corresponding to the second data.
[0054] In this embodiment, when the binding data of the marker is replaced, the virtual image corresponding to the second data bound to the marker can be displayed on the display screen of the electronic device at the position corresponding to the marker.
[0055] As a manner, on the display screen of the electronic device, the transformation process of the two virtual images (the virtual image corresponding to the first data to the virtual image corresponding to the second data) can be presented. For example, the binding data corresponding to the marker “No. 7” is replaced from the virtual image “cow” corresponding to the first data to the virtual image “poster” corresponding to the second data. After the replacement of the binding data of the marker “No. 7” is completed, the gradual change from “cow” to “poster” can be dynamically displayed on the display screen of the electronic device, giving the viewer a visual dynamic transformation experience. It can be understood that the change from the virtual image corresponding to the first data to the virtual image corresponding to the second data displayed on the display screen of the electronic device can be gradual or sudden, and the transformation effect can be set according to the user's preference.
[0056] In other possible embodiments, the replacement of the binding data of the marker can also be performed in the screen-off state. Until the transformation of the binding data from the first data to the second data is successful, the display on the display screen of the electronic device is performed.
[0057] The data updating method provided in this embodiment can update (replace) the virtual image data bound to the same marker without replacing the marker, and can be applied in many virtual reality or augmented reality scenarios.
[0058] For example, in a VR / AR museum, since the number and position of the markers are generally fixed, after the data updating method provided in this embodiment is used, the virtual image data bound to the same marker on the exhibition stand can be replaced, so that the virtual image of different exhibits can be displayed at different time periods, and the exhibition theme can be adapted to various changes (such as ancient artifact exhibition, science and technology exhibition, painting exhibition, etc.). Even the exhibition of different themes can be continuously performed within a day, which improves the attractiveness of the museum to the participating tourists.
[0059] For example, in a VR / AR multimedia classroom, the content of the teacher's daily lectures may be different. At this time, the virtual image data of the relevant lecture notes in the classroom is bound to the marker. When the lecture notes are changed, the marker on the blackboard (or other platform for displaying virtual lecture notes images) does not need to be replaced. Only the virtual image data of the lecture notes bound to the marker is replaced at the client or server end using the data updating method provided in this embodiment, so that different virtual lecture content can be displayed on the blackboard. The teacher and students only need to wear corresponding VR / AR electronic devices to see the virtual lecture notes, without the need to replace the marker after class. The content of the lecture notes can be replaced in the same class, making the classroom content more abundant and improving the practicality and efficiency of the VR / AR multimedia classroom.
[0060] For example, in a shopping mall, the advertisement often needs to be changed. In the past, when the advertisement content was changed in the VR / AR exhibition stand, the marker needed to be replaced. After using the data updating method provided in this embodiment, only the old advertisement content bound to the marker needs to be replaced with new advertisement content each time, so that different advertisement content can be displayed at different time periods. This reduces the cost of frequent replacement of markers and realizes long-term uninterrupted continuous display of different advertisement content, so that tourists wearing VR / AR electronic devices can see the advertisement at any time period when they enter the shopping mall, improving the commercial benefits of the advertisement.
[0061] The above examples are only some practical applications of the data updating method provided in this embodiment. It can be understood that, as the VR / AR technology further develops and becomes more popular, the data updating method provided in this embodiment can play a role in more practical application scenarios.
[0062] The data updating method provided in this embodiment can update the data bound to the marker without replacing a new marker. Different virtual images can be displayed through the same marker, improving the efficiency of data updating.
[0063] Please refer to Figure 5 , Figure 5 Another data updating method provided in this embodiment is shown in the flowchart. The following will take a mobile phone as an example to elaborate on the flowchart shown in Figure 5 The data updating method can specifically include the following steps:
[0064] Step S201: Collecting an image containing a marker.
[0065] Step S202: Identifying the marker in the image and determining the identity information of the marker.
[0066] Step S203: Checking in the server whether the bound data corresponding to the identity information has been replaced.
[0067] In this embodiment, the client can first confirm with the server whether the binding data corresponding to the marker (identity information) has been replaced in the server, and then decide whether to generate the binding data replacement instruction of the marker according to the result of the server feedback.
[0068] In this embodiment, step S203 can also be divided into step S203a, step S203b and step S203c.
[0069] Step S203a: sending a binding information search request corresponding to the identity information to the server.
[0070] Step S203b: receiving the binding data replacement result corresponding to the identity information issued by the server in response to the binding information search request.
[0071] In this embodiment, the client can send a binding information search request corresponding to the identity information of the marker to the server, and the server can feed back the binding data replacement result corresponding to the identity information to the client after receiving the binding information search request.
[0072] As a way, the binding information corresponding to the identity information can include the virtual image data currently bound by the identity information, and the binding data replacement result corresponding to the identity information, which is used to indicate whether the binding data of the identity information has been replaced relative to the last time the client accesses the server.
[0073] Step S203c: judging whether the binding data corresponding to the identity information has been replaced based on the binding data replacement result.
[0074] In this embodiment, after the client receives the binding data replacement result corresponding to the identity information issued by the server, it can judge whether the binding data corresponding to the identity information has been replaced according to the binding data replacement result.
[0075] For example, the binding data replacement result corresponding to the identity information "No. 7" of the marker "No. 7" is that the first data corresponding to the virtual image "poster" is replaced by the second data corresponding to the virtual image "potted plant" (which can be represented by the symbol "1"), and when the client obtains the binding data replacement result, it can be determined that the binding data corresponding to the marker "No. 7" has been replaced; on the contrary, if the binding data replacement result corresponding to the identity information "No. 7" is that there is no replacement (which can be represented by the symbol "0"), when the client obtains the binding data replacement result, it can be determined that the binding data corresponding to the marker "No. 7" has not been replaced relative to the last time of access.
[0076] In the process of actually implementing the present solution, the data identifier bound with the identity information in the server can be acquired, and then compared with the data identifier bound with the identity information locally to determine whether they are consistent, and a corresponding binding data replacement result is generated. As a way, the binding data replacement result can be a symbol, which can be used to indicate whether the binding data of the marker has been replaced on the server side. For example, when the binding data is replaced, the binding data replacement result is "1", and when the binding data is not replaced, the binding data replacement result is "0". It can be understood that the descriptions of "poster", "potted plant" and other virtual images in the present embodiment are only to make the binding replacement process more intuitive and vivid, and the data instructions actually running in the electronic device and the server can be in the form of code, data, characters and the like recognizable by machines.
[0077] In the present embodiment, if the binding data corresponding to the identity information is replaced, step S204 can be performed; if the binding data corresponding to the identity information is not replaced, step S203c can be returned to judge the next binding data replacement result.
[0078] Step S204: Generate the binding data replacement instruction of the marker corresponding to the identity information.
[0079] In the present embodiment, if it is determined through the foregoing steps that the binding data corresponding to the identity information has been replaced on the server side, the binding data replacement instruction of the marker corresponding to the identity information can be generated at this time to synchronize and update the virtual image data bound with the marker stored locally on the client side.
[0080] As a way, the binding data replacement instruction can include the instruction "replace the first data bound locally with the second data", for example, the binding data of the marker "No. 7" on the server side is replaced from the first data corresponding to the virtual image "poster" to the second data corresponding to the virtual image "potted plant", at this time the binding data replacement instruction corresponding to the marker "No. 7" generated by the client can be to replace the first data corresponding to the virtual image "poster" bound locally with the second data corresponding to the virtual image "potted plant".
[0081] Step S205: Acquire the second data replaced corresponding to the binding data replacement instruction.
[0082] In this embodiment, after the binding data replacement instruction is acquired, the second data after the marker is replaced at the server side can be acquired according to the binding data replacement instruction. For example, the binding data of the marker "No. 7" at the server side is replaced from the first data corresponding to the virtual image "poster" to the second data corresponding to the virtual image "potted plant", the binding data replacement instruction corresponding to the marker "No. 7" generated by the client is to replace the first data corresponding to the virtual image "poster" locally bound to the second data corresponding to the virtual image "potted plant", and the second data after the replacement corresponding to the binding data replacement instruction is the virtual image data corresponding to the "potted plant".
[0083] In this embodiment, step S205 can also be divided into step S205a and step S205b.
[0084] Step S205a: searching for the second data after the replacement corresponding to the identity information in the server.
[0085] Step S205b: downloading the second data to the local.
[0086] In this embodiment, the client can search for the second data after the replacement corresponding to the identity information at the server side, and download the second data to the local. For example, after the client searches for the binding data of the marker "No. 7" to be replaced to the second data corresponding to the virtual image "potted plant" in the server, the virtual image data (i.e. the second data) corresponding to the "potted plant" can be downloaded to the local, so as to replace the first data corresponding to the virtual image "poster" bound to the marker locally to the second data corresponding to the virtual image "potted plant".
[0087] It can be understood that in other possible embodiments, the second data can also be directly acquired from the local. For example, the binding data replacement instruction corresponding to the marker "No. 7" is to replace the first data corresponding to the virtual image "poster" bound locally to the second data corresponding to the virtual image "potted plant", and at this time, the client can search whether the virtual image data corresponding to the "potted plant" has been stored in the local memory, and if so, the virtual image data corresponding to the "potted plant" can be directly acquired from the local memory to replace the virtual image data corresponding to the "poster" previously bound to the marker "No. 7".
[0088] As a way, after the client generates the binding data replacement instruction, the local can be searched first, and if the corresponding second data is not stored in the local, the server can be used to acquire.
[0089] Step S206: replacing the first data bound to the marker stored locally with the second data.
[0090] In the embodiment, when the identity information of the marker is updated (replaced) in the corresponding binding data on the server side, each client accessing the server side can synchronously update the binding data of the marker stored locally, so that only one update on the server side can make all clients (terminals) accessing the server side synchronously update the data, and the efficiency of binding replacement is improved.
[0091] In the embodiment, as a manner, steps S207 and S208 can also be performed before step S201.
[0092] Step S207: Obtain the identity information and the second data of the marker whose binding data needs to be replaced.
[0093] Step S208: Send the identity information and the second data of the marker whose binding data needs to be replaced to the server, so that the server replaces the first data bound to the marker whose binding data needs to be replaced with the second data according to the identity information.
[0094] In the embodiment, not only the virtual image data bound to the marker can be replaced on the server side, but also the binding data of the marker can be replaced by the client and synchronously sent to the server side.
[0095] For example, a user (with binding replacement permission) wants to replace the virtual image displayed by the marker "No. 7" from "potted plant" to "bird". The user can first input the identity information "No. 7" of the marker on the man-machine interface of the electronic device running the client, and input the virtual image data of the "bird" to be replaced (the virtual image data of the "bird" can be directly sent to the client by the user through other terminal devices, or can be obtained by the client by searching locally or on the Internet according to the text information of the "bird" input by the user). After the client obtains the identity information "No. 7" and the virtual image data of the "bird" to be replaced, the client sends the two to the server, so that the server replaces the binding data "potted plant" corresponding to the identity information "No. 7" with the second data "bird". It can be understood that after the server side updates the binding data of the marker "No. 7", other terminals (clients) accessing the server side can also synchronously update the binding data of the marker "No. 7" locally, that is, one terminal (client) (with modification permission) can synchronously update the binding information of the marker on other terminals through the server.
[0096] In the embodiment, as a manner, steps S209 and S210 can also be performed after step S202.
[0097] Step S209: Set a binding data replacement period.
[0098] Step S210: send the binding data replacement period to the server, so that the server replaces the binding data of the marker based on the binding data replacement period.
[0099] In this embodiment, the client can also provide the user with the option of setting the binding data replacement period; after the client is set, the binding data replacement period can be sent to the server to make the server replace the binding data of the marker regularly.
[0100] As a way, the client can display the option for setting the binding data replacement period on the human-computer interaction interface of the electronic device, so that the user can set the binding data replacement period on the human-computer interaction interface. In particular, the binding data replacement period can be set for multiple markers at the same time, or only for one marker.
[0101] For example, the user sets the binding data replacement period of the marker "No. 7" to "24 hours" in the client, and then the server can replace the binding data of the marker "No. 7" every 24 hours after the client sends the binding data replacement period "24 hours" to the server.
[0102] As a way, the replaced binding data can be a set of virtual image data pre-stored in the server, which is replaced in order according to the number of each virtual image data; or it can be randomly selected from a set of virtual image data stored in the server each time. For example, when the data updating method provided in this embodiment is applied to the virtual advertising stand of the shopping mall, the virtual image data bound to the marker on the advertising stand can be replaced every certain period of time (binding data replacement period). Since the advertising content can be diverse and irrelevant, the server can randomly select and replace the virtual image data bound to the marker from the stored advertising content every certain period of time.
[0103] In some embodiments, the client can prompt the user on the human-computer interaction interface whether to set the binding data replacement period of a certain marker after the electronic device collects the marker and confirms its identity information. In other possible embodiments, the user can also directly input the identity information of a certain marker and the binding data replacement period corresponding to the identity information in the client.
[0104] In this embodiment, as a way, after step S202, steps S211, S212 and S213 can also be performed.
[0105] Step S211: obtain the access duration of the marker within a preset time period from the server.
[0106] Step S212: determining whether the access duration is less than a preset value.
[0107] In this embodiment, if the access duration is less than the preset value, step S213 can be performed; if the access duration is greater than the preset value, the process can return to step S212.
[0108] Step S213: sending a binding data replacement request to the server to make the server replace the binding data of the marker.
[0109] In this embodiment, after the electronic device collects a certain marker and confirms the identity information thereof, the client can further obtain the access duration of the marker in a certain time period (a preset time period) from the server. The access duration of the marker in the preset time period can be the duration in which the marker is collected and displayed by the electronic device (which can be multiple different electronic devices) in the preset time period.
[0110] It can be understood that when the duration in which the marker is collected and displayed in the preset time period is less than a certain preset value, it indicates that the total time in which the marker is watched in the preset time period is less, which can reflect that the virtual image bound to the marker does not attract the viewer to a certain extent, and at this time, a binding data replacement request can be sent to the server to make the server replace the virtual image data bound to the marker.
[0111] As a way, the client generates a log associating the identity information of the marker with the access duration after each access to the marker, and uploads the log to the server. The server side can record the sum of the access durations of the marker in the logs sent by various terminals, and associate the dates of access to obtain the total access duration of the marker in the preset time period.
[0112] For example, the client obtains from the server that the access duration of the virtual image data “potted plant” bound to the marker “No. 7” in 1 month (a preset time period) is 10 hours, which is lower than the minimum access duration of 20 hours (a preset value), at this time, the client can send a binding data replacement request corresponding to the marker “No. 7” to the server to make the server replace the virtual image data corresponding to the virtual image “potted plant” currently bound to the marker “No. 7”. The specific replacement rule can be set by the user, for example, it can be randomly selected from the virtual images stored in the server to replace, or the virtual image with the highest heat (the longest access duration in the preset time period) in the server is selected to replace, or other rules.
[0113] In some embodiments, the client (with the binding replacement authority) can display the access duration of the marker in the preset time period on the man-machine interface after the electronic device collects the marker and confirms the identity information thereof. In other possible embodiments, the user can also directly input the identity information of a marker on the client to find the access duration of the marker corresponding to the identity information in the server in the preset time period.
[0114] It can be understood that, after the step S206, the step S210 and the step S213 in the present embodiment, a step of displaying the virtual image corresponding to the second data (i.e., the binding data after the marker replacement) can be performed.
[0115] The data updating method provided by the present application can update the virtual image data of the marker binding on each terminal through the server synchronization, and can set the marker to replace the binding data periodically, and automatically replace the binding data when the access of the marker is low, so that the application of the present application is more intelligent and humanized, and the user experience is further improved.
[0116] Please refer to Figure 6 , Figure 6 A module block diagram of a data updating apparatus 300 provided by an embodiment of the present application is shown. The module block diagram shown in Figure 6 will be described below, and the data updating apparatus 300 includes an acquisition module 310, an identification module 320, an acquisition module 330, a replacement module 340 and a display module 350, wherein:
[0117] The acquisition module 310 is configured to acquire an image containing a marker.
[0118] The identification module 320 is configured to identify the marker in the image and determine the identity information of the marker.
[0119] The acquisition module 330 is configured to acquire a binding data replacement instruction corresponding to the marker according to the identity information.
[0120] The replacement module 340 is configured to replace the first data bound by the marker with second data based on the binding data replacement instruction.
[0121] The display module 350 is configured to display a virtual image corresponding to the second data.
[0122] The data updating apparatus provided by the present application can update the data bound by the marker without replacing a new marker, and the same marker can be used to display different virtual images, thereby improving the efficiency of data updating.
[0123] Please refer to Figure 7 ,Figure 7 A module block diagram of another data updating apparatus 400 provided by an embodiment of the present application is shown. The following will be described in the light of the module block diagram shown in the figure. The data updating apparatus 400 comprises an acquisition module 410, an identification module 420, an acquisition module 430, a replacement module 440 and a display module 450, wherein: Figure 7 The acquisition module 410 is configured to acquire an image containing a marker.
[0124] The identification module 420 is configured to identify the marker in the image and determine identity information of the marker.
[0125] The acquisition module 430 is configured to acquire a binding data replacement instruction corresponding to the marker according to the identity information. Further, the acquisition module 430 comprises a searching unit 431 and a generating unit 432, wherein:
[0126] The searching unit 431 is configured to search, in a server, whether binding data corresponding to the identity information is replaced. Further, the searching unit 431 comprises a sending subunit, a receiving subunit and a judging subunit, wherein:
[0127] The sending subunit is configured to send, to the server, a binding information searching request corresponding to the identity information.
[0128] The receiving subunit is configured to receive a binding data replacement result corresponding to the identity information issued by the server in response to the binding information searching request.
[0129] The judging subunit is configured to judge, based on the binding data replacement result, whether the binding data corresponding to the identity information is replaced.
[0130] The generating unit 432 is configured to generate a binding data replacement instruction of the marker corresponding to the identity information when the binding data corresponding to the identity information is replaced.
[0131] The replacement module 440 is configured to replace, based on the binding data replacement instruction, first data bound by the marker with second data. Further, the replacement module 440 comprises an acquisition unit 441 and a replacement unit 442, wherein:
[0132] The acquisition unit 441 is configured to acquire the second data after replacement corresponding to the binding data replacement instruction. Further, the acquisition unit 441 comprises a searching subunit and a downloading subunit, wherein:
[0133] The searching subunit is configured to search, in a server, the second data after replacement corresponding to the identity information.
[0134] The downloading subunit is configured to download the second data after replacement corresponding to the identity information.
[0135] a downloading subunit, configured to download the second data to the local terminal.
[0136] a replacing unit 442, configured to replace the first data bound to the marker stored locally with the second data.
[0137] a display module 450, configured to display a virtual image corresponding to the second data.
[0138] a first updating module 461, configured to acquire identity information of a marker requiring replacement of bound data and the second data.
[0139] a second updating module 462, configured to send the identity information of the marker requiring replacement of bound data and the second data to a server, so that the server replaces the first data bound to the marker requiring replacement of bound data with the second data according to the identity information.
[0140] a first period module 471, configured to set a bound data replacement period.
[0141] a second period module 472, configured to send the bound data replacement period to the server, so that the server replaces bound data of the marker based on the bound data replacement period.
[0142] a first duration module 481, configured to acquire, from the server, a visit duration of the marker within a preset time period;
[0143] a second duration module 482, configured to determine whether the visit duration is less than a preset value.
[0144] a third duration module 483, configured to send a bound data replacement request to the server to make the server replace bound data of the marker when the visit duration is less than the preset value.
[0145] The data updating apparatus provided by the embodiment of the application can update virtual image data bound to a marker on each terminal synchronously through a server, and can set the marker to replace bound data periodically and replace bound data automatically when the marker has low visit popularity, so that the application of the present solution is more intelligent and humanized, and the user experience is further improved.
[0146] An electronic device is provided, which includes a display, a memory, and a processor, the display and the memory being coupled to the processor, the memory storing instructions that, when executed by the processor, perform:
[0147] acquiring an image containing a marker;
[0148] identify the marker in the image, and determine identity information of the marker;
[0149] obtain a binding data replacement instruction corresponding to the marker according to the identity information;
[0150] replace first data bound to the marker with second data based on the binding data replacement instruction;
[0151] display a virtual image corresponding to the second data.
[0152] The embodiments of the present application provide a computer readable storage medium having processor executable program code, and the program code causes the processor to perform:
[0153] collect an image containing a marker;
[0154] identify the marker in the image, and determine identity information of the marker;
[0155] obtain a binding data replacement instruction corresponding to the marker according to the identity information;
[0156] replace first data bound to the marker with second data based on the binding data replacement instruction;
[0157] display a virtual image corresponding to the second data.
[0158] In summary, the data updating method, device, electronic device and computer readable storage medium provided by the embodiments of the present application first collect an image containing a marker; then identify the marker in the image, and determine identity information of the marker; then obtain a binding data replacement instruction corresponding to the marker according to the identity information; and replace first data bound to the marker with second data based on the binding data replacement instruction; and finally display a virtual image corresponding to the second data bound to the marker. Compared with the prior art, the embodiments of the present application can update the data bound to the marker without replacing a new marker, and can display different virtual images through the same marker, thereby improving the efficiency of data updating.
[0159] It should be noted that each of the embodiments in the present specification adopts a progressive manner for description, and each embodiment focuses on the difference from other embodiments, and the same and similar parts between each embodiment can be referred to each other. For the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant part can be referred to the part of the method embodiment. For any processing manner described in the method embodiment, it can be realized by a corresponding processing module in the device embodiment, and the device embodiment will not be described one by one.
[0160] It should be understood that the electronic device described above is not limited to a head-mounted display or a smartphone, a tablet, and it should refer to a computer device that can be used on the move. Specifically, the electronic device refers to a mobile computer device equipped with a smart operating system, and the electronic device includes, but is not limited to, a head-mounted display, a smartphone, a smart watch, a tablet, and the like.
[0161] In the description of the present specification, the description of the terms "one embodiment", "some embodiments", "an example", "a specific example", or "some examples" and the like means that the specific features, structures, materials or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present application. In the present specification, the illustrative description of the above terms does not necessarily refer to the same embodiment or example. Also, the specific features, structures, materials or characteristics described can be combined in any appropriate manner in any one or more embodiments or examples. In addition, the person skilled in the art can combine and combine the different embodiments or examples described in the present specification and the features of the different embodiments or examples, without contradiction.
[0162] In addition, the terms "first", "second" are only for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined with "first", "second" can explicitly or implicitly include at least one of the features. In the description of the present application, the meaning of "a plurality of" is at least two, for example, two, three, etc., unless otherwise explicitly specified.
[0163] Any process or method descriptions in flow charts or described elsewhere herein can be understood as representing code modules, segments, or portions of code that include one or more executable instructions for performing specific logic functions or steps in the process, and that the scope of preferred embodiments of the present application encompasses alterations, modifications, and permutations of this process, including but not limited to those that can not be shown or discussed explicitly herein. Those skilled in the art will appreciate that the scope of the preferred embodiments of the present application fully encompasses those alterations, modifications, and permutations, as can be readily imparted by a person of ordinary skill in the art with the benefit of this disclosure.
[0164] The logic and / or steps represented in the flow diagrams and / or described herein, for example, can be considered as a sequence of executable instructions, and can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions. For purposes of this specification, a "computer-readable medium" can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer-readable medium can be a product of the manufacturing and / or processing. The computer-readable medium can include, but is not limited to, the following: an electronic connection (an electronic device) having one or more wires; a portable computer diskette (a magnetic device); a RAM (random access memory); a ROM (read only memory); an EPROM (erasable programmable ROM) or Flash memory; an optical fiber; and a portable CD ROM. Additionally, the computer-readable medium can be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for example, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory.
[0165] It should be understood that aspects of the application can be implemented in hardware, software, firmware or combinations thereof. In the above embodiments, various steps or methods can be implemented in software or firmware that is stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, and in another embodiment, any of the following techniques, which are well known in the art of hardware implementation, can be used: a combination of logic gates in a logic circuit, a combination of processor(s) and memory(ies) that is (are) programmed to perform a process, field-programmable gate array (FPGA), application-specific integrated circuit (ASIC), etc.
[0166] Those skilled in the art can understand that all or part of the steps of the method carried out by the above-mentioned embodiments can be instructed by a program to the relevant hardware, and the program can be stored in a computer readable storage medium. When the program is executed, it includes one of the steps of the method embodiments or a combination thereof. In addition, each functional unit in each embodiment of the present application can be integrated into a processing module, or each unit can be physically present separately, or two or more units can be integrated into a module. The above-mentioned integrated module can be realized in the form of hardware or in the form of a software function module. The integrated module, if realized in the form of a software function module and sold or used as an independent product, can also be stored in a computer readable storage medium.
[0167] The storage medium mentioned above can be a read-only memory, a magnetic disk or an optical disk, etc. Although the embodiments of the present application have been shown and described above, it should be understood that the above-mentioned embodiments are exemplary and cannot be understood as limiting the present application. Those skilled in the art can make changes, modifications, replacements and variations to the above-mentioned embodiments within the scope of the present application.
[0168] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art can understand that the technical solutions recorded in the foregoing embodiments can be modified, or some technical features can be replaced by equivalents; and these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A data updating method characterized by comprising: The method is applied to an electronic device on which a client of an AR / VR application runs, and the method comprises the following steps: collecting an image containing a marker; identifying the marker in the image and determining identity information of the marker; obtaining a binding data replacement instruction corresponding to the marker according to the identity information; replacing first data bound to the marker and stored locally by the client with second data based on the binding data replacement instruction; the first data is virtual image data bound to the marker before the marker is replaced, and the second data is virtual image data bound to the marker after the marker is replaced; the second data is obtained from a server according to the binding data replacement instruction; displaying a virtual image corresponding to the second data; after the marker in the image is identified and the identity information of the marker is determined, the method further comprises the following steps: obtaining, from the server, an access duration of the marker within a preset time period; wherein, after the server receives logs uploaded by each client after the marker is accessed, the access duration of the marker within the preset time period is obtained according to the access duration of the marker in the logs sent by each client; determining whether the access duration is less than a preset value; if the access duration is less than the preset value, sending a binding data replacement request to the server to replace the binding data of the marker, and the server replaces the binding data of the marker with virtual image data corresponding to the number of each virtual image data in a group of virtual image data stored in advance in sequence; the virtual image data bound to the marker is virtual image data of an exhibit in a museum.
2. The method of claim 1, wherein, Obtaining a binding data replacement instruction corresponding to the marker according to the identity information comprises the following steps: determining whether the binding data corresponding to the identity information has been replaced in the server; if the binding data corresponding to the identity information has been replaced, generating a binding data replacement instruction of the marker corresponding to the identity information.
3. The method of claim 2, wherein, Determining whether the binding data corresponding to the identity information has been replaced in the server comprises the following steps: sending a binding information search request corresponding to the identity information to the server; receiving a binding data replacement result corresponding to the identity information issued by the server in response to the binding information search request; determining whether the binding data corresponding to the identity information has been replaced based on the binding data replacement result.
4. The method of claim 1, wherein, Replacing first data bound to the marker and stored locally by the client with second data based on the binding data replacement instruction comprises the following steps: obtaining the second data after replacement corresponding to the binding data replacement instruction; replacing the first data bound to the marker and stored locally with the second data.
5. The method of claim 4, wherein, Obtaining the second data after replacement corresponding to the binding data replacement instruction comprises the following steps: finding the second data after replacement corresponding to the identity information in the server; downloading the second data to the local.
6. The method of claim 1, wherein, Before collecting the image containing the marker, the method further comprises the following steps: obtaining identity information and second data of the marker whose binding data needs to be replaced; Send the identity information of the marker needing to replace the binding data and the second data to the server, so that the server replaces the first data bound by the marker needing to replace the binding data with the second data according to the identity information.
7. The method of claim 1, wherein, The method further comprises: Setting a binding data replacement period; Sending the binding data replacement period to the server, so that the server replaces the binding data of the marker based on the binding data replacement period.
8. A data updating apparatus characterized by comprising: Applied to an electronic device, a client of an AR / VR application is running on the electronic device, and the device comprises: An acquisition module for acquiring an image containing a marker; An identification module for identifying the marker in the image and determining the identity information of the marker; An acquisition module for acquiring a binding data replacement instruction corresponding to the marker according to the identity information; A replacement module for replacing first data bound by the marker locally stored by the client with second data based on the binding data replacement instruction; the first data is virtual image data bound by the marker before the marker is replaced and bound, and the second data is virtual image data bound by the marker after the marker is replaced and bound; the second data is obtained from the server according to the binding data replacement instruction; A display module for displaying a virtual image corresponding to the second data; The data updating device further comprises: A first time length module for obtaining the access time length of the marker within a preset time period from the server; wherein the server obtains the access time length of the marker within a preset time period according to the access time length of the marker in the log sent by each client after receiving the log uploaded by each client after accessing the marker; A second time length module for determining whether the access time length is less than a preset value; A third time length module for sending a binding data replacement request to the server to make the server replace the binding data of the marker if the access time length is less than the preset value, wherein the server replaces the binding data of the marker with virtual image data of corresponding numbers in a group of virtual image data stored in advance in sequence according to the number of each virtual image data; the virtual image data bound by the marker is virtual image data of an exhibit in a museum.
9. An electronic device, comprising: A display, a memory, and a processor, the display and the memory are coupled to the processor, the memory stores instructions, when the instructions are executed by the processor, the processor executes the method of any one of claims 1-7.
10. A computer-readable storage medium having program code executable by a processor, the program code comprising instructions for: The program code causes the processor to execute the method of any one of claims 1-7.
Citation Information
Patent Citations
Information display method and device
CN107204031A
Augmented reality system, augmented reality processing method, program and recording medium
JP2015210807A