CN117391932A - Screen model merging method and device, electronic equipment and storage medium - Google Patents

Screen model merging method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN117391932A
CN117391932A CN202311381563.5A CN202311381563A CN117391932A CN 117391932 A CN117391932 A CN 117391932A CN 202311381563 A CN202311381563 A CN 202311381563A CN 117391932 A CN117391932 A CN 117391932A
Authority
CN
China
Prior art keywords
screen
model
models
screen model
group
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311381563.5A
Other languages
Chinese (zh)
Inventor
王天舒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenli Vision Shenzhen Cultural Technology Co ltd
Original Assignee
Shenli Vision Shenzhen Cultural Technology Co ltd
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 Shenli Vision Shenzhen Cultural Technology Co ltd filed Critical Shenli Vision Shenzhen Cultural Technology Co ltd
Priority to CN202311381563.5A priority Critical patent/CN117391932A/en
Publication of CN117391932A publication Critical patent/CN117391932A/en
Pending legal-status Critical Current

Links

Abstract

The disclosure relates to a screen model merging method, a device, an electronic device and a storage medium, wherein the method comprises the following steps: acquiring a screen candidate set, wherein the screen candidate set comprises a plurality of screen models and direction vectors corresponding to the screen models; determining at least one screen group according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models, wherein the main directions of the screen models in the same screen group are the same and belong to the same row or the same column; according to the vertex coordinates of each screen model in the screen group, determining the pose adjustment quantity between every two adjacent screen models in the screen group; and adjusting the pose of the screen models in the screen group according to the pose adjustment amount between every two adjacent screen models in the screen group so as to merge the screen models in the screen group. Therefore, the method can automatically and efficiently correct the dislocation and gap between the adjacent screen models, and is beneficial to quickly and accurately combining the screen models.

Description

Screen model merging method and device, electronic equipment and storage medium
Technical Field
The disclosure relates to the technical field of virtual shooting, in particular to a screen model merging method, a device, electronic equipment and a storage medium.
Background
In order to meet shooting requirements, a large amount of time and labor are required to select shooting places, make props and build shooting scenes in traditional movie production. And the virtual shooting (or virtual film making) technology can replace the real scenery by using the virtual scene rendered by the rendering engine, thereby reducing the dependence of film and television shooting on places and scenery and greatly reducing the shooting cost. Meanwhile, by means of the capability of real-time rendering, for some special effects which originally need to be manufactured in the later period, the virtual shooting can see the effect of sheeting in the shooting stage, and the manufacturing efficiency is improved due to the front-end later period.
In the virtual shooting technology, a virtual camera is usually required to be placed in a virtual scene to simulate the displacement and rotation of a physical camera, a screen model for 1:1 reduction of a real world LED screen is also required, and a picture in the visual field of the virtual camera is projected onto the screen model after three-dimensional projection transformation, so that the picture is mapped onto the LED screen in the real world. Therefore, the physical camera can shoot not only real scenery and actors, but also virtual scenery, and an augmented reality experience with virtual-real overlapping is created.
In this process, the projected images on the screen models determine the images on the LED screens in the real world, so when there is a dislocation or gap between adjacent screen models in the virtual scene, the images on the LED screens in the real scene will also have a tear or miss condition, which puts a high requirement on the measurement accuracy of the relative positional relationship required when the LED screens are modeled, but no matter how the relative positional relationship between the LED screens is measured manually, by laser scanning or by related algorithms to generate the screen models, errors will inevitably occur, especially when there are a plurality of closely adjacent LED screens in the real scene, these errors may cause gaps or dislocations between the modeled adjacent screen models, and it is difficult to align the screen models completely when the screen models are combined. At present, when dislocation or gaps appear between adjacent screen models, a manual correction mode is generally adopted, time and labor are wasted, and correction precision and efficiency are low.
Disclosure of Invention
In view of this, the disclosure provides a screen model merging method, device, electronic equipment and storage medium, which can automatically and efficiently correct misalignment and gaps between adjacent screen models, is beneficial to realizing rapid and accurate merging of screen models, is beneficial to continuity of screen models, does not need manual intervention, and has high efficiency and high precision.
According to an aspect of the present disclosure, there is provided a screen model merging method, including: acquiring a screen candidate set, wherein the screen candidate set comprises a plurality of screen models and direction vectors corresponding to the screen models, and the screen models are positioned in the same coordinate system; determining at least one screen group according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models, wherein one screen group comprises at least two screen models, the main directions of the screen models in the same screen group are the same and belong to the same row or the same column, and the main directions of the screen models are directions of coordinate axes corresponding to the maximum components of the direction vectors of the screen models on three coordinate axes of the coordinate system; for each screen group, determining pose adjustment amounts between every two adjacent screen models in the screen group according to vertex coordinates of each screen model in the screen group, wherein the pose adjustment amounts comprise rotation amounts and/or displacement amounts; and adjusting the pose of the screen models in the screen group according to the pose adjustment amount between every two adjacent screen models in the screen group so as to merge the screen models in the screen group.
In one possible implementation manner, the determining at least one screen group according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models includes: selecting any screen model from the screen candidate set as a reference screen model and adding the reference screen model into a blank screen group; judging whether the main directions of the S-th screen model and the reference screen model are the same according to the direction vectors of the reference screen model and other S screen models in the screen candidate set, wherein S is more than or equal to 1, and S is less than or equal to S; judging whether the coordinate ranges of the s-th screen model and the reference screen model on two other coordinate axes except the coordinate axes corresponding to the main direction overlap or not according to the vertex coordinates of the s-th screen model and the reference screen model under the condition that the main direction of the s-th screen model is the same as the main direction of the reference screen model and the screen group where the reference screen model is located only comprises the reference screen model; and under the condition that the s-th screen model and the coordinate range of the reference screen model are overlapped, determining that the s-th screen model and the reference screen model belong to the same row or the same column of screen models, and adding the s-th screen model into a screen group where the reference screen model is located.
In one possible implementation manner, the determining, according to the vertex coordinates of the s-th screen model and the reference screen model, whether there is overlap between the coordinate ranges of the s-th screen model and the reference screen model on two other coordinate axes except for the coordinate axes corresponding to the main direction includes: according to the vertex coordinates of the s-th screen model and the reference screen model, determining the overlapping degree of the coordinate ranges of the s-th screen model and the reference screen model on the two other coordinate axes respectively; and under the condition that the overlapping degree of the s-th screen model and the coordinate range of the reference screen model on any other coordinate axis is larger than a preset threshold, determining that the s-th screen model overlaps the coordinate range of the reference screen model, and taking the coordinate axis with the largest overlapping degree as the main coordinate axis of the screen group where the reference screen model is located.
In one possible implementation manner, the determining at least one screen group according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models, further includes: determining the overlapping degree of the s-th screen model and the coordinate range of the reference screen model on a main coordinate axis according to the vertex coordinates of the s-th screen model and the reference screen model under the condition that the main direction of the s-th screen model is the same as the main direction of the reference screen model and two or more screen models are contained in a screen group where the reference screen model is located, wherein the main coordinate axis is the coordinate axis with the largest overlapping degree of the s-th screen model and the coordinate range of the reference screen model on the two other coordinate axes; and under the condition that the overlapping degree of the s-th screen model and the coordinate range of the reference screen model on the main coordinate axis is larger than a preset threshold, determining that the s-th screen model overlaps with the coordinate range of the reference screen model, and adding the s-th screen model into a screen group where the reference screen model is located.
In one possible implementation manner, the adding the s-th screen model to the screen group where the reference screen model is located includes: determining the minimum distance between the s-th screen model and each screen model in the screen group of the reference screen model according to the vertex coordinates of the s-th screen model and each screen model currently contained in the screen group of the reference screen model; and adding the s screen model to the screen group where the reference screen model is located when the minimum distance between the s screen model and each screen model in the screen group where the reference screen model is located is smaller than or equal to a preset distance threshold.
In one possible implementation manner, the determining the pose adjustment amount between every two adjacent screen models in the screen group according to the vertex coordinates of each screen model in the screen group includes: sequencing each screen model in the screen group according to the vertex coordinates of each screen model in the screen group, and determining the pose adjustment quantity of the I-th screen model after sequencing relative to the I-1-th screen model, wherein I is [2, I ], and I is the total number of the screen models in the screen group; the adjusting the pose of the screen models in the screen group according to the pose adjusting quantity between every two adjacent screen models in the screen group comprises the following steps: and adjusting the pose of the ith screen model according to the pose adjustment quantity of the ith screen model after sequencing relative to the ith-1 screen model.
In one possible implementation manner, the determining the pose adjustment amount of the ith screen model after sorting relative to the (i-1) th screen model includes: determining the reference vector and the reference point of each of the ith screen model and the (i-1) th screen model based on the main coordinate axis corresponding to the screen group; the main coordinate axis corresponding to the screen group is the coordinate axis with the largest overlapping degree of the coordinate ranges of the screen models in the screen group; under the condition that the main coordinate axis is a horizontal axis or a vertical axis, the reference vectors of the ith screen model and the (i-1) th screen model are row vectors of the screen models, the reference point of the ith screen model is a lower vertex or an upper vertex, and the reference point of the (i-1) th screen model is an upper vertex or a lower vertex; under the condition that the main coordinate axis is the vertical axis, the reference vectors of the ith screen model and the (i-1) th screen model are column vectors of the screen models, the reference point of the ith screen model is a left vertex or a right vertex, and the reference point of the (i-1) th screen model is a right vertex or a left vertex; determining the rotation quantity of the ith screen model relative to the ith-1 screen model according to the reference vectors of the ith screen model and the ith-1 screen model; and determining the displacement of the ith screen model relative to the ith-1 screen model according to the three-dimensional coordinates of the reference points of the ith screen model and the ith-1 screen model.
According to another aspect of the present disclosure, there is provided a screen model merging apparatus including: the system comprises an acquisition module, a display module and a display module, wherein the acquisition module is used for acquiring a screen candidate set, the screen candidate set comprises a plurality of screen models and direction vectors corresponding to the screen models, and the screen models are in the same coordinate system; the screen group determining module is used for determining at least one screen group according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models, wherein one screen group comprises at least two screen models, the main directions of the screen models in the same screen group are the same and belong to the same row or the same column, and the main directions of the screen models are directions of coordinate axes corresponding to the maximum components of the direction vectors of the screen models on three coordinate axes of the coordinate system; the pose adjustment quantity determining module is used for determining pose adjustment quantity between every two adjacent screen models in the screen groups according to vertex coordinates of each screen model in the screen groups for each screen group, wherein the pose adjustment quantity comprises rotation quantity and/or displacement quantity; and the adjusting module is used for adjusting the pose of the screen models in the screen group according to the pose adjusting quantity between every two adjacent screen models in the screen group so as to combine the screen models in the screen group.
According to another aspect of the present disclosure, there is provided an electronic device including: a processor; a memory for storing processor-executable instructions; wherein the processor is configured to implement the above-described method when executing the instructions stored by the memory.
According to another aspect of the present disclosure, there is provided a non-transitory computer readable storage medium having stored thereon computer program instructions, wherein the computer program instructions, when executed by a processor, implement the above-described method.
According to another aspect of the present disclosure, there is provided a computer program product comprising a computer readable code, or a non-transitory computer readable storage medium carrying computer readable code, which when run in a processor of an electronic device, performs the above method.
According to the embodiment of the disclosure, each screen model in the screen candidate set is divided into the screen groups which have the same main direction and belong to the same row or the same column according to the direction vector and the vertex coordinates of each screen model in the screen candidate set, and then the pose adjustment quantity between every two adjacent screen models in the screen groups is determined according to the vertex coordinates of the screen models in each screen group, which is equivalent to automatically calculating the adjacent relation and the pose relation between each screen model, and further the pose of the screen model is adjusted according to the pose adjustment quantity between every two adjacent screen models, so that the dislocation and the gap between the adjacent screen models can be automatically and efficiently corrected, namely the screen models can be quickly and accurately combined, the continuity of the screen models is facilitated, manual intervention is not needed, and the efficiency and the precision are higher.
Other features and aspects of the present disclosure will become apparent from the following detailed description of exemplary embodiments, which proceeds with reference to the accompanying drawings.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate exemplary embodiments, features and aspects of the present disclosure and together with the description, serve to explain the principles of the disclosure.
Fig. 1 shows a flowchart of a screen model merging method according to an embodiment of the present disclosure.
Fig. 2 shows a schematic diagram of multiple screen models in the same coordinate system according to an embodiment of the present disclosure.
Fig. 3 shows a schematic diagram of multiple screen models in the same coordinate system according to an embodiment of the present disclosure.
Fig. 4 shows a flow diagram of a screen group determination process according to an embodiment of the present disclosure.
Fig. 5 shows a schematic diagram of a plurality of screen models after pose adjustment according to an embodiment of the present disclosure.
Fig. 6 shows a block diagram of a screen model merging apparatus according to an embodiment of the present disclosure.
Fig. 7 illustrates a block diagram of an electronic device 1900 according to an embodiment of the disclosure.
Detailed Description
Various exemplary embodiments, features and aspects of the disclosure will be described in detail below with reference to the drawings. In the drawings, like reference numbers indicate identical or functionally similar elements. Although various aspects of the embodiments are illustrated in the accompanying drawings, the drawings are not necessarily drawn to scale unless specifically indicated.
The word "exemplary" is used herein to mean "serving as an example, embodiment, or illustration. Any embodiment described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments.
In addition, numerous specific details are set forth in the following detailed description in order to provide a better understanding of the present disclosure. It will be understood by those skilled in the art that the present disclosure may be practiced without some of these specific details. In some instances, methods, means, elements, and circuits well known to those skilled in the art have not been described in detail in order not to obscure the present disclosure.
As described above, at present, a mode of manually correcting dislocation or gaps between adjacent screen models is generally adopted, but the mode of manually correcting is not accurate enough and has low efficiency. In view of this, the embodiment of the disclosure provides a screen model merging method, which can be applied to merging a plurality of screen models in a virtual shooting system, can automatically determine the adjacent relation and pose relation of the screen models, and perform serialization merging on the adjacent screen models, thereby being beneficial to continuity of the screen models, having no need of manual intervention, greatly reducing cost of manual operation, having stable merging effect, and being faster and more convenient.
The screen model merging method of the embodiment of the disclosure can be deployed on various terminal devices through software or hardware modification, the terminal devices related to the embodiment of the disclosure can refer to devices with wireless connection functions and/or wired connection functions, the wireless connection functions can be connected with other devices through wireless connection modes such as wifi and Bluetooth, and the terminal devices related to the embodiment of the disclosure can also communicate with other devices through wired connection functions. The terminal device related to the embodiment of the disclosure may be a touch screen, or may be a non-screen, where the touch screen may control the terminal device by clicking, sliding, etc. on a display screen with a finger, a stylus, etc., and the non-touch screen device may be connected to an input device such as a mouse, a keyboard, a touch panel, etc., and the non-touch screen device may control the terminal device through the input device, and the non-screen device may be a bluetooth speaker without a screen, for example. For example, the terminal device of the present application may include, but is not limited to, a User Equipment (UE), a mobile device, a User terminal, a handheld device, a tablet, a notebook, a palm top, a computing device, and the like.
The screen model merging method of the embodiment of the disclosure may also be deployed on a server, where the server may be located in a cloud or local area, may be a physical device, may also be a virtual device, such as a virtual machine, a container, or the like, and has a wireless communication function, where the wireless communication function may be provided in a chip (system) or other components or assemblies of the server. The server according to the embodiment of the disclosure may also have a function of wired connection to perform communication. The embodiment of the present disclosure does not limit the execution subject of the screen model merging method.
Fig. 1 shows a flowchart of a screen model merging method according to an embodiment of the present disclosure. As shown in fig. 1, the screen model merging method includes: step S11 to step S14.
In step S11, a screen candidate set is obtained, where the screen candidate set includes a plurality of screen models and direction vectors corresponding to the plurality of screen models, and the plurality of screen models are in the same coordinate system.
It should be understood that, before executing the screen model merging method according to the embodiments of the present disclosure, a person skilled in the art may construct, in a virtual engine, a screen model corresponding to a plurality of LED screens appearing in a real scene by using modeling techniques known in the art, such as manual measurement modeling, 3D scan modeling, etc., where the screen model in the embodiments of the present disclosure may be a three-dimensional model, and constructing the screen model includes modeling a size, a shape, etc. of each LED screen, and determining a relative positional relationship between each LED screen, so that the plurality of screen models are converted into the same coordinate system or into the same three-dimensional space according to the relative positional relationship, so as to implement merging of the plurality of screen models.
In practical application, if multiple screen models with global position information (i.e., relative position relationship) are obtained, or multiple screen models that are not in the same coordinate system are obtained, the multiple screen models may be transformed into the same coordinate system according to the relative position relationship between the multiple screen models, and then the direction vector of each screen model is calculated. Wherein a plurality of screen models already in the same coordinate system may be added to the screen candidate set.
Wherein the direction vector of the screen model may represent the orientation of the screen model in three-dimensional space, the direction vector of the screen model may include the normal vector of the plane in which the screen model is located, and thus the direction vector of the screen model may be calculated using the three-dimensional coordinates of any three points in the screen model, for example, the difference vector between P1 and P0 may be calculated using the three-dimensional coordinates of three vertices P0, P1, P2 (e.g., lower left vertex, upper right vertex) of each screen modelP 1-0 Difference vector p=p1-P0 and P2 to P0 2-0 =p2-P0, then calculate P 1-0 And P 2-0 And (3) carrying out normalization after obtaining product vectors, wherein the normalized product vectors are the direction vectors of the screen model.
By way of example, fig. 2 shows four screen models (021, 022, 024, 025) already in the same coordinate system, wherein the screen models 021, 022 may be screen models corresponding to two vertical screens perpendicular to the ground, and the screen models 024, 025 may be screen models corresponding to two ground screens disposed on the ground; the two vertical screens in the real scene are closely adjacent, and the two ground screens are also closely adjacent, and due to modeling errors, after each screen model is transformed under the same coordinate system, a dislocation or gap between the screen models 021 and 022 of the two vertical screens and a dislocation or gap between the screen models 024 and 025 of the two ground screens can be generated, as shown in fig. 2, so that the pose of the screen models can be adjusted by utilizing the following steps S12 to S14 to correct the dislocation or gap between the screen models.
In step S12, at least one screen group is determined according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models, where a screen group includes at least two screen models, the main directions of the screen models in the same screen group are the same and belong to the same row or the same column, and the main directions of the screen models are directions of coordinate axes corresponding to the largest components of the direction vectors of the screen models on three coordinate axes of the coordinate system.
Considering that the number, kind and layout of LED screens in the real world are various, for example, the vertical screen may have a plurality of rows or columns, and the ground screen may also have a plurality of rows or columns, for example, a screen model of two rows and three columns vertical screen is shown in fig. 3; therefore, in order to more effectively correct the misalignment or gap between the screen models, the plurality of screen models in the screen candidate set may be grouped, and the screen models having the same main direction and belonging to the same row or column may be grouped into the same screen group, where the main directions of the screen models are the same and may be understood as the coordinate axes of the main directions of the screen models are the same, for example, the main directions of the screen models 021 and 022 of the three vertical screens in fig. 2 are the same direction of the Z axis, the main directions of the screen models 024 and 025 of the two ground screens are the same direction of the Y axis, and further, since the screen models 021 and 022 are the same row of the screen models may be grouped into the same screen group, and the screen models 024 and 025 are the same row of the screen models may be grouped into the same screen group; as shown in fig. 3, the screen models may have a plurality of rows or columns, there may be a misalignment or gap between the screen models in the row direction, and there may also be a misalignment or gap between the screen models in the column direction, so that the screen models having the same main direction and belonging to the same row or column may be further divided into the same screen groups, for example, the screen models 031, 032, and 033 in fig. 3 may be the screen models having the same main direction and belonging to the same row, that is, the screen models 031, 032, and 033 may be a set of screen groups, and the screen models 031 and 034 may be the screen models having the same main direction and belonging to the same column, that is, the screen models 031 and 034 may be a set of screen groups.
It should be understood that at least two screen models in the same screen group may be screen models of the same row or may be screen models of the same column; the real scene may also include a situation such as a ground screen or a vertical screen, that is, a main direction may only have one screen model, so when the screen models are grouped, a situation that one screen model in a certain main direction is included in a screen group may also occur, and then, no subsequent step needs to be performed on one screen model in the screen group.
In a possible implementation manner, the determining at least one screen group according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models in step S12 may include:
step S121, selecting any screen model from the screen candidate set as a reference screen model and adding the reference screen model to the blank screen group G;
step S122, judging whether the main directions of the S-th screen model and the reference screen model are the same according to the direction vectors of the reference screen model and other S screen models in the screen candidate set, wherein S is more than or equal to 1, and S is less than or equal to S;
step S123, judging whether the coordinate ranges of the S-th screen model and the reference screen model on two other coordinate axes except the coordinate axes corresponding to the main direction overlap or not according to the vertex coordinates of the S-th screen model and the reference screen model under the condition that the main direction of the S-th screen model is the same as the main direction of the reference screen model and the screen group G of the reference screen model only contains the reference screen model;
In step S124, in the case where there is overlap between the coordinate ranges of the S-th screen model and the reference screen model, it is determined that the S-th screen model p_s and the reference screen model belong to the same row or column of screen models, and the S-th screen model p_s is added to the screen group G where the reference screen model is located.
In step S121, any screen model selected from the candidate set may be selected randomly or sequentially, which is not limited to the embodiment of the present disclosure. After adding any selected screen model as the reference screen model p_base to the blank screen group G, only the reference screen model p_base, i.e., g= { p_base }, is included in the screen group G at this time.
In step S122, it may be determined whether the principal directions of the S-th screen model and the reference screen model are the same by traversing other S-th screen models in the candidate set of screen candidates, for the traversed S-th screen model, specifically, whether the principal directions of the S-th screen model and the reference screen model are the same may be determined according to the largest component of the respective direction vectors of the S-th screen model and the reference screen model on three coordinate axes, for example, assuming that the principal direction of the reference screen model is the Z-axis direction, that is, the component of the direction vector of the reference screen model on the Z-axis is the largest, if the principal direction of the S-th screen model is the Y-axis direction, the principal directions of the S-th screen model and the reference screen model are considered to be different, and if the principal direction of the S-th screen model is the Z-axis direction, the S-th screen model is considered to be the same as the principal directions of the reference screen model. It can be understood that if the main directions of the S-th screen model and the reference screen model are different, the next screen model is continuously traversed to determine that the main direction of the next screen model is the same as the reference screen model, otherwise, if the main directions are the same, step S123 is executed.
In step S123, the main direction of the S-th screen model is the same as that of the reference screen model, meaning that the S-th screen model may be the same line or the same column as that of the reference screen model, or may be a different line or a different column, and at the same time, since the screen group G where the reference screen model is located only includes one reference screen model, it cannot be determined whether the screen model added after the screen group G belongs to the same line or the same column as that of the reference screen model, so it may be determined whether the S-th screen model and the reference screen model have overlapping in coordinate ranges on two other coordinate axes except for the main direction corresponding coordinate axes, respectively, and whether the S-th screen model and the reference screen model are the same line or the same column, and specifically the same line or the same column of screen model may be determined. Wherein the main direction is generally perpendicular to the front view plane of the line distribution of the screen models, and thus whether two screen models are in the same row or in the same column can be determined by determining whether there is overlap in the coordinate ranges of two other coordinate axes except for the corresponding coordinate axes of the main direction. It should be appreciated that the coordinate range of the screen model on any coordinate axis may be determined based on the vertex coordinates of the screen model, for example, the coordinate range of the screen model on the X axis may be determined using the maximum and minimum values of the vertex coordinates of the screen model on the X axis.
Illustratively, assuming that the screen model 031 in fig. 3 is the reference screen model and the main direction is the direction of the Z axis, it can be determined whether there is overlap between the other screen models and the coordinate ranges of the screen model 031 in the X axis and the Y axis, and thus whether the other screen models are the same row or the same column of the screen model 031, for example, if there is overlap between the screen model 032 and the reference screen model 031 in the coordinate range of the Y axis, then there is overlap between the screen model 032 and the reference screen model 031 in the same row, then there is overlap between the screen model 034 and the coordinate range of the reference screen model 031 in the X axis, then there is overlap between the screen model 035 and the reference screen model 031 in the same column, and then there is neither the same row nor the column of the screen model 035 and the reference screen model 031.
It can be understood that if the coordinate ranges of the S-th screen model and the reference screen model on two other coordinate axes are not overlapped, the S-th screen model and the reference screen model are represented as neither different rows nor different columns, and the step S122 can be returned to continue to traverse the next screen model; otherwise, if there is an overlap between the S-th screen model and the reference screen model in any other coordinate axis, step S124 is executed to determine that the S-th screen model and the reference screen model belong to the same row or column of screen models, and add the S-th screen model to the screen group G where the reference screen model is located, where the screen group G includes two screen models, i.e., g= { p_base, p_s }, then it is determined whether the two screen models in the screen group G are in the same row or column, in order to make the subsequently added screen model in the screen group G belong to the same row or column as the two screen models already existing in the screen group G, and for example, if the coordinate axis of the screen group G where the reference screen model 031 in fig. 3 is included in the screen group G and {031, the coordinate axis of the screen group G where the coordinate axis of the reference screen model is overlapped with the reference screen model in the reference screen group G may be directly determined, and if the coordinate axis of the screen group G where the reference screen model 031 in the reference screen group G is overlapped with the reference screen model in the same row or column is located, and if the coordinate axis of the reference model in the screen group G is the same 031 is located.
In consideration of that the respective screen models having the same main direction may not be entirely in the same plane, an included angle may exist between the adjacent screen models in the three-dimensional space, which may cause the coordinate ranges of the two screen models to overlap in two other coordinate axes, thus, the embodiment of the present disclosure proposes that whether there is an overlap between the coordinate ranges of the two screen models and determining the main coordinate axes corresponding to the two screen models may be determined by determining the degree of overlap of the coordinate ranges of the two screen models in the other two coordinate axes. Based on this, in one possible implementation manner, in step S123, according to the vertex coordinates of the S-th screen model and the reference screen model, determining whether there is overlap between the coordinate ranges of the S-th screen model and the reference screen model on two other coordinate axes except for the coordinate axes corresponding to the main direction includes:
according to the vertex coordinates of the s-th screen model and the reference screen model, determining the overlapping degree of the coordinate ranges of the s-th screen model and the reference screen model on two other coordinate axes respectively;
and under the condition that the overlapping degree of the coordinate ranges of the s-th screen model and the reference screen model on any other coordinate axis is larger than a preset threshold, determining that the overlapping exists between the coordinate ranges of the s-th screen model and the reference screen model, and taking the coordinate axis with the largest overlapping degree as the main coordinate axis of the screen group where the reference screen model is located.
Alternatively, the overlapping degree of the coordinate ranges of the s-th screen model and the reference screen model on the two other coordinate axes can be determined by calculating the intersection sizes of the coordinate ranges of the s-th screen model and the reference screen model on the two other coordinate axes, respectively, that is, the overlapping degree of the coordinate ranges can be represented by using the intersection sizes of the coordinate ranges, wherein the larger the intersection is, the larger the overlapping degree is, and the fact that the coordinate ranges of the s-th screen model and the reference screen model overlap is determined under the condition that the intersection sizes of the coordinate ranges on any other coordinate axes are larger than a preset threshold value can be considered, and then the coordinate axis with the largest intersection is taken as the main coordinate axis of the screen group where the reference screen model is located. It should be understood that, specific values of the preset threshold may be set by those skilled in the art according to actual requirements, and the embodiments of the present disclosure are not limited thereto.
For example, if the intersection of the s-th screen model and the coordinate range of the reference screen model in the X-axis is [1,10], the intersection of the coordinate range in the Y-axis is [5.0,5.1], and the size of the intersection of the s-th screen model and the reference screen model in the X-axis exceeds the preset threshold, it is considered that there is overlap between the coordinate ranges of the s-th screen model and the reference screen model in the X-axis, and since the size of the intersection in the X-axis is larger than the size of the intersection in the Y-axis, the X-axis may be taken as the main coordinate axis of the screen group in which the reference screen model is located.
It should be understood that if the degree of overlap of the coordinate ranges of the S-th screen model and the reference screen model on two other coordinate axes is less than or equal to the preset threshold, it is considered that there is no overlap between the S-th screen model and the reference screen model, that is, the S-th screen model and the reference screen model are not in the same row or the same column, and at this time, the process may return to step S122 to continue traversing the next screen model. It should be noted that, the calculation manner of the overlapping degree provided by the above embodiment of the present disclosure is a possible implementation manner, and in fact, those skilled in the art may customize the calculation manner of the overlapping degree under the guidance of the embodiment of the present disclosure, so long as the calculated overlapping degree is used to determine whether the two screen models overlap in the coordinate ranges of the coordinate axes should be within the protection range of the embodiment of the present disclosure, and the embodiment of the present disclosure is not limited.
As described above, after determining the main coordinate axis of the screen group where the reference screen model is located, whether the S-th screen model and the reference screen model belong to the same row or the same column may be determined by directly determining whether there is an overlap between coordinate ranges on the main coordinate axis, so in one possible implementation manner, the step S12 determines at least one screen group according to the direction vectors corresponding to each of the plurality of screen models and the vertex coordinates of each of the plurality of screen models, and further includes:
Step S125, determining the overlapping degree of the coordinate range of the S-th screen model and the reference screen model on the main coordinate axis according to the vertex coordinates of the S-th screen model and the reference screen model under the condition that the main directions of the S-th screen model and the reference screen model are the same and two or more screen models are contained in the screen group of the reference screen model, wherein the main coordinate axis is the coordinate axis with the largest overlapping degree of the S-th screen model and the reference screen model on the two other coordinate axes;
in step S126, in the case that the overlapping degree of the coordinate ranges of the S-th screen model and the reference screen model on the main coordinate axis is greater than the preset threshold, it is determined that there is an overlap between the coordinate ranges of the S-th screen model and the reference screen model, and the S-th screen model is added to the screen group where the reference screen model is located.
When the main direction of the traversed s-th screen model is the same as that of the reference screen model and the screen group of the reference screen model contains two or more screen models, the overlapping degree of the coordinate range of the s-th screen model and the reference screen model on the main coordinate axis can be directly calculated, and the s-th screen model can be added into the screen group of the reference screen model under the condition that the overlapping degree is larger than a preset threshold value. The overlapping degree of the screen model on the main coordinate axis can be calculated by referring to the overlapping degree of the screen model on the coordinate ranges of other coordinate axes, and details are not repeated here.
It should be understood that if the degree of overlap of the coordinate ranges of the S-th screen model and the reference screen model on the main coordinate axis is less than or equal to the preset threshold, it may be considered that there is no overlap of the coordinate ranges of the S-th screen model and the reference screen model, or that the S-th screen model and the reference screen model do not belong to the same row or the same column, and at this time, the process may return to step S122 to continue traversing the next screen model.
Considering that, in practical situations, the LED screens in the same row or column may not be adjacent or not be adjacent, in order to facilitate subsequent adjustment of the pose of the adjacent screen models, to correct the misalignment or gap between the adjacent screen models, in a possible implementation manner, in the step S124 and the step S126, adding the S-th screen model to the screen group where the reference screen model is located may include:
determining the minimum distance between the s-th screen model and each screen model in the screen group of the reference screen model according to the vertex coordinates of each screen model currently contained in the screen group of the s-th screen model and the reference screen model;
and adding the s-th screen model to the screen group where the reference screen model is located under the condition that the minimum distance between the s-th screen model and each screen model in the screen group where the reference screen model is located is smaller than or equal to a preset distance threshold value.
Knowing the vertex coordinates of each screen model currently included in the screen group where the s-th screen model and the reference screen model are located, the distances between all vertices of the s-th screen model and all vertices of each screen model in the screen group where the reference screen model is located can be calculated to obtain the minimum distance between the s-th screen model and each screen model in the screen group where the reference screen model is located.
It should be understood that, a specific value of the preset distance threshold may be set by a person skilled in the art according to actual needs, and the embodiments of the present disclosure are not limited thereto. For example, the case length of the LED case constituting the LED screen may be set such that when the minimum distance between the screen models of the two LED screens is less than or equal to the case length of the LED case, the two LED screens may be considered to be adjacent, and the two screen models corresponding to the two LED screens are also adjacent, that is, the preset distance threshold may be used to determine whether the two screen models are adjacent screen models.
Based on this, if the minimum distance between the s-th screen model and each screen model in the screen group where the reference screen model is located is less than or equal to the preset distance threshold, it may be considered that a screen model adjacent to the s-th screen model exists in the screen group where the reference screen model is located, and the s-th screen model may be added to the screen group where the reference screen model is located. Conversely, if the minimum distance between the S-th screen model and each screen model in the screen group where the reference screen model is located is greater than the preset distance threshold, the S-th screen model and each screen model in the screen group where the reference screen model is located are considered to be non-adjacent, and the process may return to the step S122 at this time, so as to continue to traverse the next screen model until the screen model in the screen candidate set is traversed.
It should be understood that after traversing the S screen models in the candidate set of one round of screen for any reference screen model, a screen group in which the reference screen model is located may be obtained, where the screen models in the screen group may belong to the same row or the same column as the reference screen model; because the screen models may be multi-row and multi-column, the two rounds of screen candidate sets can be traversed for the same reference screen model according to actual requirements, and the second round of screen models which are not added into one screen group with the reference screen model in the screen candidate sets can be traversed, so that one or two screen groups where the reference screen model is located can be obtained, namely, a screen group formed by the screen models belonging to the same row with the reference screen model and/or a screen group formed by the screen models belonging to the same column with the reference screen model are obtained.
In practical application, after obtaining one or two screen groups where a certain reference screen is located, if there are still screen models in the screen candidate set that remain undetermined groups at this time, the reference screen model may be reselected for the screen candidate set to re-execute the steps S121 to S126 until all the screen models in the screen candidate set have been grouped.
Illustratively, fig. 4 shows a flow diagram of a process for determining a screen group according to an embodiment of the present disclosure, and as shown in fig. 4, the process for determining a screen group may include:
step S41, selecting any screen model from the screen candidate set as a reference screen model and adding the reference screen model into a blank screen group G;
step S42, traversing other S screen models in the screen candidate set, and judging whether the main directions of the S-th screen model and the reference screen model in the screen candidate set are the same; if the screen candidate set is different, traversing the next screen model in the screen candidate set; if the main direction is the same and the number of screen models in the screen group G is 1, that is, the screen group G contains only one reference screen model, step S43 is executed, and if the main direction is the same and the number of screen models in the screen group G is greater than 1, that is, the screen group G contains two or more screen models, step S44 is executed;
step S43, judging whether the coordinate ranges of the S-th screen model and the reference screen model on two other coordinate axes except the coordinate axis of the main direction overlap or not, namely judging whether the overlapping degree of the coordinate ranges of the S-th screen model and the reference screen model on the two other coordinate axes is larger than a preset threshold value or not; if there is overlap (i.e. there is overlap of coordinate ranges of any other coordinate axis greater than the preset threshold), step S45 is executed, if there is no overlap (i.e. overlap of coordinate ranges of two other coordinate axes is less than or equal to the preset threshold), step S42 is returned to traverse the next screen model in the screen candidate set;
Step S44, judging whether the coordinate ranges of the S-th screen model and the reference screen model on the main coordinate axis overlap or not, namely judging whether the overlapping degree of the S-th screen model and the coordinate ranges of the reference screen model on the main coordinate axis is larger than a preset threshold value or not; if there is overlap (i.e. the degree of overlap of the coordinate ranges on the main coordinate axis is greater than the preset threshold), step S45 is executed, if there is no overlap (i.e. the degree of overlap of the coordinate ranges on the main coordinate axis is less than or equal to the preset threshold), step S42 is returned to traverse the next screen model in the screen candidate set;
step S45, judging whether the minimum distance between the S-th screen model and each screen model currently contained in the screen group where the reference screen model is located is smaller than or equal to a preset distance threshold value; if the screen group G includes only one reference screen model and the distance is less than or equal to the preset distance threshold, step S46 is performed; if the distance is less than or equal to the preset distance threshold and the screen group G already includes two or more screen models, step S47 is performed; if the minimum distance between the S-th screen model and each screen model currently contained in the screen group where the reference screen model is located is not less than or equal to the preset distance threshold, returning to the step S42 to traverse the next screen model in the screen candidate set;
Step S46, taking the coordinate axis with the largest overlapping degree as the main coordinate axis of the screen group where the reference screen model is located, and executing step S47;
step S47, adding the S-th screen model to a screen group where the reference screen model is located;
step S48, if the screen candidate set is not empty, that is, if there is an undetermined grouped screen model in the screen candidate set, the process returns to step S41 to select the reference screen model again, and the screen group of the reference screen model selected again is determined.
Through the screen group determining process from step S41 to step S48, a screen group formed by adjacent screen models having the same main direction and belonging to the same row or column in the screen candidate set can be automatically and efficiently determined, so that the pose of the adjacent screen models in the screen group can be conveniently adjusted subsequently to correct the dislocation or gap between the adjacent screen models.
In step S13, for each screen group, a pose adjustment amount between every two adjacent screen models in the screen group is determined according to the vertex coordinates of the respective screen models in the screen group, the pose adjustment amount including a rotation amount and/or a displacement amount.
As described above, the screen models in the same screen group are adjacent, but at this time, the arrangement order, or the adjacent order, of the screen models in the same screen group cannot be determined, so as to facilitate determining the pose adjustment amount between every two adjacent screen models in the screen group, in one possible implementation, the determining the pose adjustment amount between every two adjacent screen models in the screen group according to the vertex coordinates of the screen models in the screen group may include:
According to the vertex coordinates of each screen model in the screen group, sequencing each screen model in the screen group, determining the pose adjustment quantity of the ith screen model after sequencing relative to the ith-1 screen model, wherein I is E [2, I ], and I is the total number of the screen models in the screen group. In this way, the arrangement order of the screen models in the same screen group can be effectively determined.
As described above, the screen models in the same screen group may belong to the same row or the same column, and therefore it may be determined whether to sort in the row direction or the column direction based on the main coordinate axis corresponding to the screen group, specifically, if the main coordinate axis of the screen group is the X-axis or the Z-axis, the sorting from large to small or from small to large may be performed according to the coordinate value of the vertex coordinate on the Y-axis, and if the main coordinate axis of the screen group is the Y-axis, the sorting from large to small or from small to large may be performed according to the coordinate value of the vertex coordinate on the X-axis, and then the ith screen model may be determined according to the order from large to small or from small to large. It should be understood that one skilled in the art may sort the screen models in the same screen group in a sorting manner known in the art, and the embodiments of the present disclosure are not limited in this regard.
In one possible implementation manner, the determining the pose adjustment amount of the i-th screen model after sorting relative to the i-1-th screen model may include:
determining the reference vector and the reference point of each of the ith screen model and the (i-1) th screen model based on the main coordinate axis corresponding to the screen group; the main coordinate axis corresponding to the screen group is the coordinate axis with the largest overlapping degree of the coordinate ranges of the screen models in the screen group; under the condition that the main coordinate axis is a horizontal axis (X axis) or a vertical axis (Z axis), the reference vectors of the ith screen model and the (i-1) th screen model are row vectors of the screen models, the reference point of the ith screen model is a lower vertex or an upper vertex, and the reference point of the (i-1) th screen model is an upper vertex or a lower vertex; under the condition that the main coordinate axis is the vertical axis (Y axis), the reference vectors of the ith screen model and the (i-1) th screen model are column vectors of the screen models, the reference point of the ith screen model is a left vertex or a right vertex, and the reference point of the (i-1) th screen model is a right vertex or a left vertex;
determining the rotation quantity of the ith screen model relative to the ith-1 screen model according to the reference vectors of the ith screen model and the ith-1 screen model;
And determining the displacement of the ith screen model relative to the ith-1 screen model according to the three-dimensional coordinates of the reference points of the ith screen model and the ith-1 screen model.
The line vector of the screen model may be a normalized vector of a difference vector between two vertices (for example, a lower left vertex and a lower right vertex) in the line direction of the screen model, that is, a vector obtained by normalizing a vector difference between vertex coordinates of the two left and right vertices; the column vector of the screen model may be a normalized vector of a difference vector between two vertices (for example, an upper left vertex and a lower left vertex) in the column direction of the screen model, that is, a vector obtained by normalizing a difference vector between vertex coordinates of the upper and lower vertices.
It should be appreciated that in order to closely merge two adjacent screen models, the reference points of the i-1 th screen model and the i-1 th screen model should be adjacent and merge together vertices, whereby when the reference point of the i-1 th screen model is a lower vertex (e.g., a lower left vertex), the reference point of the i-1 th screen model should be an upper vertex (e.g., an upper left vertex); when the reference point of the ith screen model is an upper vertex (such as an upper right vertex), the reference point of the ith-1 screen model is a lower vertex (such as a lower right vertex); when the datum point of the ith screen model is a left vertex (such as a lower left vertex), the datum point of the ith-1 screen model is a right vertex (such as a lower right vertex); when the reference point of the ith screen model is a right vertex (e.g., an upper right vertex), the reference point of the ith-1 screen model is a left vertex (e.g., an upper left vertex).
In practical application, the rotation amount can be expressed by using a quaternion number, namely quat= (w, x, y, z), wherein x, y, z are three components of the vector products of two reference vectors of two screen models on three coordinate axes, and w is the evolution of the sum of the inner products of the two reference vectors and the modular length products of the two reference vectors; the displacement amount, which is the difference between the three-dimensional coordinates of the two reference points of the two screen models, may be expressed by a ternary number, that is, the displacement amount may be expressed as t= (a, b, c).
In step S14, the pose of the screen models in the screen group is adjusted according to the amount of pose adjustment between every two adjacent screen models in the screen group to merge the individual screen models in the screen group.
As described above, the determination in step S13 is the pose adjustment amount of the i-th screen model with respect to the i-1-th screen model, based on which the pose adjustment amount of the screen model in the screen group is adjusted according to the pose adjustment amount between every two adjacent screen models in the screen group, may include: and adjusting the pose of the ith screen model according to the pose adjustment quantity of the ith screen model after sequencing relative to the ith-1 screen model. In this way, the pose of the screen model can be adjusted in a serialization manner.
Wherein, according to the position and orientation adjustment amount of the ith screen model relative to the ith-1 screen model after sequencing, the position and orientation of the ith screen model is adjusted, it can be understood that according to the rotation amount and displacement amount of the ith screen model relative to the ith-1 screen model after sequencing, the vertex coordinates of each vertex of the ith screen model are rotated and displaced, for example, assuming that the vertex coordinates of the ith screen model are denoted as K, the rotation and displacement of the vertex coordinates of each vertex of the ith screen model can be expressed as: k. Quat+t. For example, by adjusting the pose of the screen model shown in fig. 3, the adjustment result shown in fig. 5 may be obtained, and as shown in fig. 5, adjacent screen models are closely connected.
According to the embodiment of the disclosure, each screen model in the screen candidate set is divided into the screen groups which have the same main direction and belong to the same row or the same column according to the direction vector and the vertex coordinates of each screen model in the screen candidate set, and then the pose adjustment quantity between every two adjacent screen models in the screen groups is determined according to the vertex coordinates of the screen models in each screen group, which is equivalent to automatically calculating the adjacent relation and the pose relation between each screen model, and further the pose of the screen model is adjusted according to the pose adjustment quantity between every two adjacent screen models, so that the dislocation and the gap between the adjacent screen models can be automatically and efficiently corrected, namely the screen models can be quickly and accurately combined, the continuity of the screen models is facilitated, manual intervention is not needed, and the efficiency and the precision are higher.
Fig. 6 shows a block diagram of a screen model merging apparatus according to an embodiment of the present disclosure, as shown in fig. 6, the apparatus including:
an obtaining module 601, configured to obtain a screen candidate set, where the screen candidate set includes a plurality of screen models and direction vectors corresponding to the plurality of screen models, and the plurality of screen models are in a same coordinate system;
the screen group determining module 602 is configured to determine at least one screen group according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models, where one screen group includes at least two screen models, the main directions of the screen models in the same screen group are the same and belong to the same row or the same column, and the main directions of the screen models are directions of coordinate axes corresponding to maximum components of the direction vectors of the screen models on three coordinate axes of the coordinate system;
a pose adjustment amount determining module 603, configured to determine, for each screen group, a pose adjustment amount between every two adjacent screen models in the screen group according to vertex coordinates of each screen model in the screen group, where the pose adjustment amount includes a rotation amount and/or a displacement amount;
and the adjusting module 604 is used for adjusting the pose of the screen models in the screen group according to the pose adjustment amount between every two adjacent screen models in the screen group so as to combine the screen models in the screen group.
In one possible implementation manner, the determining at least one screen group according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models includes: selecting any screen model from the screen candidate set as a reference screen model and adding the reference screen model into a blank screen group; judging whether the main directions of the S-th screen model and the reference screen model are the same according to the direction vectors of the reference screen model and other S screen models in the screen candidate set, wherein S is more than or equal to 1, and S is less than or equal to S; judging whether the coordinate ranges of the s-th screen model and the reference screen model on two other coordinate axes except the coordinate axes corresponding to the main direction overlap or not according to the vertex coordinates of the s-th screen model and the reference screen model under the condition that the main direction of the s-th screen model is the same as the main direction of the reference screen model and the screen group where the reference screen model is located only comprises the reference screen model; and under the condition that the s-th screen model and the coordinate range of the reference screen model are overlapped, determining that the s-th screen model and the reference screen model belong to the same row or the same column of screen models, and adding the s-th screen model into a screen group where the reference screen model is located.
In one possible implementation manner, the determining, according to the vertex coordinates of the s-th screen model and the reference screen model, whether there is overlap between the coordinate ranges of the s-th screen model and the reference screen model on two other coordinate axes except for the coordinate axes corresponding to the main direction includes: according to the vertex coordinates of the s-th screen model and the reference screen model, determining the overlapping degree of the coordinate ranges of the s-th screen model and the reference screen model on the two other coordinate axes respectively; and under the condition that the overlapping degree of the s-th screen model and the coordinate range of the reference screen model on any other coordinate axis is larger than a preset threshold, determining that the s-th screen model overlaps the coordinate range of the reference screen model, and taking the coordinate axis with the largest overlapping degree as the main coordinate axis of the screen group where the reference screen model is located.
In one possible implementation manner, the determining at least one screen group according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models, further includes: determining the overlapping degree of the s-th screen model and the coordinate range of the reference screen model on a main coordinate axis according to the vertex coordinates of the s-th screen model and the reference screen model under the condition that the main direction of the s-th screen model is the same as the main direction of the reference screen model and two or more screen models are contained in a screen group where the reference screen model is located, wherein the main coordinate axis is the coordinate axis with the largest overlapping degree of the s-th screen model and the coordinate range of the reference screen model on the two other coordinate axes; and under the condition that the overlapping degree of the s-th screen model and the coordinate range of the reference screen model on the main coordinate axis is larger than a preset threshold, determining that the s-th screen model overlaps with the coordinate range of the reference screen model, and adding the s-th screen model into a screen group where the reference screen model is located.
In one possible implementation manner, the determining at least one screen group according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models, further includes: determining the overlapping degree of the coordinate range of the s-th screen model and the reference screen model on the main coordinate axis according to the vertex coordinates of the s-th screen model and the reference screen model under the condition that the main direction of the s-th screen model and the reference screen model are the same and two or more screen models are contained in a screen group where the reference screen model is located; and under the condition that the overlapping degree of the s-th screen model and the coordinate range of the reference screen model on the main coordinate axis is larger than the preset threshold, determining that the s-th screen model overlaps with the coordinate range of the reference screen model, and adding the s-th screen model into the screen group where the reference screen model is located.
In one possible implementation manner, the determining the pose adjustment amount between every two adjacent screen models in the screen group according to the vertex coordinates of each screen model in the screen group includes: sequencing each screen model in the screen group according to the vertex coordinates of each screen model in the screen group, and determining the pose adjustment quantity of the I-th screen model after sequencing relative to the I-1-th screen model, wherein I is [2, I ], and I is the total number of the screen models in the screen group; the adjusting the pose of the screen models in the screen group according to the pose adjusting quantity between every two adjacent screen models in the screen group comprises the following steps: and adjusting the pose of the ith screen model according to the pose adjustment quantity of the ith screen model after sequencing relative to the ith-1 screen model.
In one possible implementation manner, the determining the pose adjustment amount of the ith screen model after sorting relative to the (i-1) th screen model includes: determining the reference vector and the reference point of each of the ith screen model and the (i-1) th screen model based on the main coordinate axis corresponding to the screen group; the main coordinate axis corresponding to the screen group is the coordinate axis with the largest overlapping degree of the coordinate ranges of the screen models in the screen group; under the condition that the main coordinate axis is a horizontal axis or a vertical axis, the reference vectors of the ith screen model and the (i-1) th screen model are row vectors of the screen models, the reference point of the ith screen model is a lower vertex or an upper vertex, and the reference point of the (i-1) th screen model is an upper vertex or a lower vertex; under the condition that the main coordinate axis is the vertical axis, the reference vectors of the ith screen model and the (i-1) th screen model are column vectors of the screen models, the reference point of the ith screen model is a left vertex or a right vertex, and the reference point of the (i-1) th screen model is a right vertex or a left vertex; determining the rotation quantity of the ith screen model relative to the ith-1 screen model according to the reference vectors of the ith screen model and the ith-1 screen model; and determining the displacement of the ith screen model relative to the ith-1 screen model according to the three-dimensional coordinates of the reference points of the ith screen model and the ith-1 screen model.
According to the embodiment of the disclosure, each screen model in the screen candidate set is divided into the screen groups which have the same main direction and belong to the same row or the same column according to the direction vector and the vertex coordinates of each screen model in the screen candidate set, and then the pose adjustment quantity between every two adjacent screen models in the screen groups is determined according to the vertex coordinates of the screen models in each screen group, which is equivalent to automatically calculating the adjacent relation and the pose relation between each screen model, and further the pose of the screen model is adjusted according to the pose adjustment quantity between every two adjacent screen models, so that the dislocation and the gap between the adjacent screen models can be automatically and efficiently corrected, namely the screen models can be quickly and accurately combined, the continuity of the screen models is facilitated, manual intervention is not needed, and the efficiency and the precision are higher.
In some embodiments, functions or modules included in an apparatus provided by the embodiments of the present disclosure may be used to perform a method described in the foregoing method embodiments, and specific implementations thereof may refer to descriptions of the foregoing method embodiments, which are not repeated herein for brevity.
The disclosed embodiments also provide a computer readable storage medium having stored thereon computer program instructions which, when executed by a processor, implement the above-described method. The computer readable storage medium may be a volatile or nonvolatile computer readable storage medium.
The embodiment of the disclosure also provides an electronic device, which comprises: a processor; a memory for storing processor-executable instructions; wherein the processor is configured to implement the above-described method when executing the instructions stored by the memory.
Embodiments of the present disclosure also provide a computer program product comprising computer readable code, or a non-transitory computer readable storage medium carrying computer readable code, which when run in a processor of an electronic device, performs the above method.
Fig. 7 illustrates a block diagram of an electronic device 1900 according to an embodiment of the disclosure. For example, electronic device 1900 may be provided as a server or terminal device. Referring to FIG. 7, electronic device 1900 includes a processing component 1922 that further includes one or more processors and memory resources represented by memory 1932 for storing instructions, such as application programs, that can be executed by processing component 1922. The application programs stored in memory 1932 may include one or more modules each corresponding to a set of instructions. Further, processing component 1922 is configured to execute instructions to perform the methods described above.
The electronic device 1900 may also include a power component 1926 configured to perform power management of the electronic device 1900, a wired or wireless network interface 1950 configured to connect the electronic device 1900 to a network, and an input/output interface 1958 (I/O interface). The electronic device 1900 may operate an operating system based on a memory 1932, such as Windows Server TM ,Mac OS X TM ,Unix TM ,Linux TM ,FreeBSD TM Or the like.
In an exemplary embodiment, a non-transitory computer readable storage medium is also provided, such as memory 1932, including computer program instructions executable by processing component 1922 of electronic device 1900 to perform the methods described above.
The present disclosure may be a system, method, and/or computer program product. The computer program product may include a computer readable storage medium having computer readable program instructions embodied thereon for causing a processor to implement aspects of the present disclosure.
The computer readable storage medium may be a tangible device that can hold and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium would include the following: portable computer disks, hard disks, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static Random Access Memory (SRAM), portable compact disk read-only memory (CD-ROM), digital Versatile Disks (DVD), memory sticks, floppy disks, mechanical coding devices, punch cards or in-groove structures such as punch cards or grooves having instructions stored thereon, and any suitable combination of the foregoing. Computer-readable storage media, as used herein, are not to be construed as transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., optical pulses through fiber optic cables), or electrical signals transmitted through wires.
The computer readable program instructions described herein may be downloaded from a computer readable storage medium to a respective computing/processing device or to an external computer or external storage device over a network, such as the internet, a local area network, a wide area network, and/or a wireless network. The network may include copper transmission cables, fiber optic transmissions, wireless transmissions, routers, firewalls, switches, gateway computers and/or edge servers. The network interface card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium in the respective computing/processing device.
Computer program instructions for performing the operations of the present disclosure can be assembly instructions, instruction Set Architecture (ISA) instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, c++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer readable program instructions may be executed entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider). In some embodiments, aspects of the present disclosure are implemented by personalizing electronic circuitry, such as programmable logic circuitry, field Programmable Gate Arrays (FPGAs), or Programmable Logic Arrays (PLAs), with state information of computer readable program instructions, which can execute the computer readable program instructions.
Various aspects of the present disclosure are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer-readable program instructions.
These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable medium having the instructions stored therein includes an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus or other devices implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The foregoing description of the embodiments of the present disclosure has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the various embodiments described. The terminology used herein was chosen in order to best explain the principles of the embodiments, the practical application, or the technical improvements in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.

Claims (10)

1. A screen model merging method, comprising:
acquiring a screen candidate set, wherein the screen candidate set comprises a plurality of screen models and direction vectors corresponding to the screen models, and the screen models are positioned in the same coordinate system;
determining at least one screen group according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models, wherein one screen group comprises at least two screen models, the main directions of the screen models in the same screen group are the same and belong to the same row or the same column, and the main directions of the screen models are directions of coordinate axes corresponding to the maximum components of the direction vectors of the screen models on three coordinate axes of the coordinate system;
For each screen group, determining pose adjustment amounts between every two adjacent screen models in the screen group according to vertex coordinates of each screen model in the screen group, wherein the pose adjustment amounts comprise rotation amounts and/or displacement amounts;
and adjusting the pose of the screen models in the screen group according to the pose adjustment amount between every two adjacent screen models in the screen group so as to merge the screen models in the screen group.
2. The method of claim 1, wherein the determining at least one screen group from the respective direction vectors of the plurality of screen models and the respective vertex coordinates of the plurality of screen models comprises:
selecting any screen model from the screen candidate set as a reference screen model and adding the reference screen model into a blank screen group;
judging whether the main directions of the S-th screen model and the reference screen model are the same according to the direction vectors of the reference screen model and other S screen models in the screen candidate set, wherein S is more than or equal to 1, and S is less than or equal to S;
judging whether the coordinate ranges of the s-th screen model and the reference screen model on two other coordinate axes except the coordinate axes corresponding to the main direction overlap or not according to the vertex coordinates of the s-th screen model and the reference screen model under the condition that the main direction of the s-th screen model is the same as the main direction of the reference screen model and the screen group where the reference screen model is located only comprises the reference screen model;
And under the condition that the s-th screen model and the coordinate range of the reference screen model are overlapped, determining that the s-th screen model and the reference screen model belong to the same row or the same column of screen models, and adding the s-th screen model into a screen group where the reference screen model is located.
3. The method according to claim 2, wherein the determining whether there is overlap between the coordinate ranges of the s-th screen model and the reference screen model on two other coordinate axes except the main direction corresponding coordinate axis according to the vertex coordinates of the s-th screen model and the reference screen model, includes:
according to the vertex coordinates of the s-th screen model and the reference screen model, determining the overlapping degree of the coordinate ranges of the s-th screen model and the reference screen model on the two other coordinate axes respectively;
and under the condition that the overlapping degree of the s-th screen model and the coordinate range of the reference screen model on any other coordinate axis is larger than a preset threshold, determining that the s-th screen model overlaps the coordinate range of the reference screen model, and taking the coordinate axis with the largest overlapping degree as the main coordinate axis of the screen group where the reference screen model is located.
4. A method according to claim 2 or 3, wherein said determining at least one screen group from the respective direction vectors of the plurality of screen models and the respective vertex coordinates of the plurality of screen models further comprises:
determining the overlapping degree of the s-th screen model and the coordinate range of the reference screen model on a main coordinate axis according to the vertex coordinates of the s-th screen model and the reference screen model under the condition that the main direction of the s-th screen model is the same as the main direction of the reference screen model and two or more screen models are contained in a screen group where the reference screen model is located, wherein the main coordinate axis is the coordinate axis with the largest overlapping degree of the s-th screen model and the coordinate range of the reference screen model on the two other coordinate axes;
and under the condition that the overlapping degree of the s-th screen model and the coordinate range of the reference screen model on the main coordinate axis is larger than a preset threshold, determining that the s-th screen model overlaps with the coordinate range of the reference screen model, and adding the s-th screen model into a screen group where the reference screen model is located.
5. The method according to any one of claims 2 to 4, wherein adding the s-th screen model to the screen group in which the reference screen model is located comprises:
Determining the minimum distance between the s-th screen model and each screen model in the screen group of the reference screen model according to the vertex coordinates of the s-th screen model and each screen model currently contained in the screen group of the reference screen model;
and adding the s screen model to the screen group where the reference screen model is located when the minimum distance between the s screen model and each screen model in the screen group where the reference screen model is located is smaller than or equal to a preset distance threshold.
6. The method according to claim 1, wherein determining the pose adjustment amount between every two adjacent screen models in the screen group according to the vertex coordinates of each screen model in the screen group comprises:
sequencing each screen model in the screen group according to the vertex coordinates of each screen model in the screen group, and determining the pose adjustment quantity of the I-th screen model after sequencing relative to the I-1-th screen model, wherein I is [2, I ], and I is the total number of the screen models in the screen group;
the adjusting the pose of the screen models in the screen group according to the pose adjusting quantity between every two adjacent screen models in the screen group comprises the following steps:
And adjusting the pose of the ith screen model according to the pose adjustment quantity of the ith screen model after sequencing relative to the ith-1 screen model.
7. The method of claim 6, wherein determining the pose adjustment for the ranked i-th screen model relative to the i-1-th screen model comprises:
determining the reference vector and the reference point of each of the ith screen model and the (i-1) th screen model based on the main coordinate axis corresponding to the screen group; the main coordinate axis corresponding to the screen group is the coordinate axis with the largest overlapping degree of the coordinate ranges of the screen models in the screen group; under the condition that the main coordinate axis is a horizontal axis or a vertical axis, the reference vectors of the ith screen model and the (i-1) th screen model are row vectors of the screen models, the reference point of the ith screen model is a lower vertex or an upper vertex, and the reference point of the (i-1) th screen model is an upper vertex or a lower vertex; under the condition that the main coordinate axis is the vertical axis, the reference vectors of the ith screen model and the (i-1) th screen model are column vectors of the screen models, the reference point of the ith screen model is a left vertex or a right vertex, and the reference point of the (i-1) th screen model is a right vertex or a left vertex;
Determining the rotation quantity of the ith screen model relative to the ith-1 screen model according to the reference vectors of the ith screen model and the ith-1 screen model;
and determining the displacement of the ith screen model relative to the ith-1 screen model according to the three-dimensional coordinates of the reference points of the ith screen model and the ith-1 screen model.
8. A screen model merging apparatus, characterized by comprising:
the system comprises an acquisition module, a display module and a display module, wherein the acquisition module is used for acquiring a screen candidate set, the screen candidate set comprises a plurality of screen models and direction vectors corresponding to the screen models, and the screen models are in the same coordinate system;
the screen group determining module is used for determining at least one screen group according to the direction vectors corresponding to the screen models and the vertex coordinates of the screen models, wherein one screen group comprises at least two screen models, the main directions of the screen models in the same screen group are the same and belong to the same row or the same column, and the main directions of the screen models are directions of coordinate axes corresponding to the maximum components of the direction vectors of the screen models on three coordinate axes of the coordinate system;
The pose adjustment quantity determining module is used for determining pose adjustment quantity between every two adjacent screen models in the screen groups according to vertex coordinates of each screen model in the screen groups for each screen group, wherein the pose adjustment quantity comprises rotation quantity and/or displacement quantity;
and the adjusting module is used for adjusting the pose of the screen models in the screen group according to the pose adjusting quantity between every two adjacent screen models in the screen group so as to combine the screen models in the screen group.
9. An electronic device, comprising:
a processor;
a memory for storing processor-executable instructions;
wherein the processor is configured to implement the method of any one of claims 1 to 7 when executing the instructions stored by the memory.
10. A non-transitory computer readable storage medium having stored thereon computer program instructions, which when executed by a processor, implement the method of any of claims 1 to 7.
CN202311381563.5A 2023-10-23 2023-10-23 Screen model merging method and device, electronic equipment and storage medium Pending CN117391932A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311381563.5A CN117391932A (en) 2023-10-23 2023-10-23 Screen model merging method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311381563.5A CN117391932A (en) 2023-10-23 2023-10-23 Screen model merging method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN117391932A true CN117391932A (en) 2024-01-12

Family

ID=89462582

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311381563.5A Pending CN117391932A (en) 2023-10-23 2023-10-23 Screen model merging method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN117391932A (en)

Similar Documents

Publication Publication Date Title
CN110689585B (en) Multi-phase external parameter combined calibration method, device, equipment and medium
CN108604379A (en) System and method for determining the region in image
RU2741443C1 (en) Method and device for sampling points selection for surveying and mapping, control terminal and data storage medium
CN112150551B (en) Object pose acquisition method and device and electronic equipment
CN111968229A (en) High-precision map making method and device
CN111612852B (en) Method and apparatus for verifying camera parameters
CN113048980B (en) Pose optimization method and device, electronic equipment and storage medium
WO2022135138A1 (en) Robot task deployment method and system, device, and storage medium
JP7228623B2 (en) Obstacle detection method, device, equipment, storage medium, and program
CN103914876A (en) Method and apparatus for displaying video on 3D map
CN110648363A (en) Camera posture determining method and device, storage medium and electronic equipment
JP2022541977A (en) Image labeling method, device, electronic device and storage medium
CN114758337B (en) Semantic instance reconstruction method, device, equipment and medium
Ahmadabadian et al. Stereo‐imaging network design for precise and dense 3D reconstruction
CN115439543A (en) Method for determining hole position and method for generating three-dimensional model in metauniverse
EP4246452A1 (en) Three-dimensional point cloud densification device, three-dimensional point cloud densification method, and program
CN115097975A (en) Method, apparatus, device and storage medium for controlling view angle conversion
CN114998433A (en) Pose calculation method and device, storage medium and electronic equipment
US20210201522A1 (en) System and method of selecting a complementary image from a plurality of images for 3d geometry extraction
JP5811923B2 (en) Information processing apparatus, image processing method, and program
CN112634366B (en) Method for generating position information, related device and computer program product
US20230224576A1 (en) System for generating a three-dimensional scene of a physical environment
CN117391932A (en) Screen model merging method and device, electronic equipment and storage medium
CN114882194A (en) Method and device for processing room point cloud data, electronic equipment and storage medium
CN113836337A (en) BIM display method, device, equipment and storage medium

Legal Events

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