A data processing method and apparatus

By acquiring the first contour posture data projected onto the projection surface, the coordinate transformation parameters between the image acquisition device and the projection surface are automatically determined, solving the problem of insufficient dependence on calibration objects in the existing technology and realizing flexible and accurate determination of calibration parameters.

CN114882107BActive Publication Date: 2026-02-27LENOVO (BEIJING) LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210365226.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-07
Publication Date
2026-02-27
Estimated Expiration
2042-04-07

AI Technical Summary

Technical Problem

In existing technologies, the calibration between the camera coordinate system and the projection plane coordinate system strictly depends on a specified number and position of calibration objects, which lacks flexibility and cannot adapt to changes in the position between the image acquisition device and the projection device.

Method used

By acquiring the attitude data of the first contour projected onto the projection surface, the coordinate transformation parameters between the image acquisition device and the projection surface are determined based on the attitude data, thereby achieving automatic and flexible determination of calibration parameters.

Benefits of technology

It eliminates the dependence on a designated calibration object and can dynamically determine calibration parameters when the position of the image acquisition device and the projection surface changes, thus improving the flexibility and accuracy of the calibration parameters.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114882107B_ABST
    Figure CN114882107B_ABST
Patent Text Reader

Abstract

The application discloses a data processing method and device, wherein the method comprises: obtaining first attitude data; wherein the first attitude data comprises attitude data of a first contour projected on a projection surface; the first contour corresponds to at least part of a contour of a first object in first data collected by an image collection device; determining first calibration parameters based on the first attitude data; wherein the first calibration parameters comprise coordinate conversion parameters between a first coordinate system in which the image collection device is located and a second coordinate system in which the projection surface is located; and processing the first attitude data based on the first calibration parameters to obtain second attitude data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of image data processing technology, and in particular to a data processing method and apparatus. Background Technology

[0002] In practical applications, it is usually necessary to use a known number of calibration references, each with a specified size and relative position relative to the projection plane, to calibrate the coordinate transformation relationship between the camera coordinate system and the coordinate system of the projection plane. This is necessary to further adjust the pose of objects in the image data acquired by the camera based on the coordinate transformation relationship. However, this calibration method is strictly dependent on the calibration references, thus lacking flexibility. Summary of the Invention

[0003] In view of the above problems, this application provides a data processing method and apparatus.

[0004] The technical solution provided in this application is as follows:

[0005] This application provides a data processing method, wherein the method includes:

[0006] First posture data is obtained; wherein, the first posture data includes posture data of a first contour projected on the projection surface; the first contour corresponds to at least a portion of the contour of the first object in the first data acquired by the image acquisition device;

[0007] Based on the first posture data, a first calibration parameter is determined; wherein, the first calibration parameter includes a coordinate transformation parameter between the first coordinate system where the image acquisition device is located and the second coordinate system where the projection surface is located;

[0008] The first attitude data is processed based on the first calibration parameters to obtain the second attitude data.

[0009] In some embodiments, determining the first calibration parameter based on the first attitude data includes:

[0010] Determine the target attitude data;

[0011] Based on the correspondence between the first attitude data and the target attitude data, the first calibration parameter is determined.

[0012] In some embodiments, determining the target pose data includes:

[0013] In response to an attitude adjustment operation, attitude adjustment data is obtained; wherein the attitude adjustment operation includes at least an attitude adjustment operation for at least one dimension of the first contour;

[0014] Based on the attitude adjustment data, the target attitude data is determined.

[0015] In some embodiments, determining the target pose data includes:

[0016] Obtain the pose data of the first object;

[0017] The target pose data is determined to be the pose data of the first object.

[0018] In some embodiments, obtaining the first attitude data includes:

[0019] Determine the second calibration parameters; wherein the second calibration parameters include coordinate transformation parameters between the first coordinate system and the third coordinate system; the third coordinate system includes a coordinate system with a specified coordinate point on the projection plane as the origin;

[0020] Based on the second calibration parameters, the contour data of the second contour is processed to obtain the contour data of the first contour; wherein, the contour data of the second contour includes image data corresponding to at least a portion of the contours in the first data.

[0021] The contour data of the first contour is analyzed to obtain the first pose data.

[0022] In some embodiments, determining the second calibration parameter includes:

[0023] A third calibration parameter is determined between the third coordinate system and the fourth coordinate system; wherein, the fourth coordinate system includes a coordinate system containing any three coordinate points on the projection plane excluding the specified point; the fourth coordinate system uses one of the three coordinate points as its origin; the three coordinate points are not collinear;

[0024] The second calibration parameter is determined based on the third calibration parameter.

[0025] In some embodiments, determining the second calibration parameter based on the third calibration parameter includes:

[0026] Obtain first coordinate data and second coordinate data of the arbitrary three coordinate points; wherein, the first coordinate data includes the coordinate data of the arbitrary three coordinate points in the first coordinate system; the second coordinate data includes the coordinate data of the arbitrary three coordinate points in the fourth coordinate system;

[0027] Determine the fourth calibration parameter between the first coordinate data and the second coordinate data;

[0028] The fourth calibration parameter is processed based on the third calibration parameter to determine the second calibration parameter.

[0029] In some embodiments, processing the contour data of the second contour based on the second calibration parameters to obtain the contour data of the first contour includes:

[0030] Based on the second calibration parameters, the contour data of the second contour is transformed to obtain view contour data;

[0031] Obtain the projection parameters of the projection surface;

[0032] Based on the projection parameters, the view contour data is orthogonally projected to obtain the contour data of the first contour.

[0033] In some embodiments, the method further includes:

[0034] The target contour and the second object are configured and rendered to obtain target data; wherein, the second object includes at least a virtual object; the pose data of the target contour is the second pose data;

[0035] The trajectory information of the target contour on the projection plane is obtained;

[0036] Based on the trajectory information, the target data is output to the projection surface.

[0037] This application embodiment also provides a data processing apparatus, wherein the apparatus includes:

[0038] A determining module is used to obtain first posture data; wherein, the first posture data includes posture data of a first contour projected on the projection surface; the first contour corresponds to at least a portion of the contour of a first object in the first data acquired by the image acquisition device;

[0039] The determining module is further configured to determine a first calibration parameter based on the first attitude data; wherein the first calibration parameter includes a coordinate transformation parameter between the first coordinate system where the image acquisition device is located and the second coordinate system where the projection surface is located;

[0040] The processing module is used to process the first attitude data based on the first calibration parameters to obtain the second attitude data.

[0041] As can be seen from the above, the data processing method provided in this application embodiment, after obtaining the first posture data of the first contour projected on the projection surface, can determine the first calibration parameter between the first coordinate system where the image acquisition device is located and the second coordinate system where the projection surface is located based on the first posture data. Thus, the data processing method provided in this application embodiment, in the process of determining the first calibration parameter, not only eliminates the dependence on a specified calibration object in related technologies, but also can dynamically determine the first calibration parameter in real time based on the first posture data, thereby enabling automatic and more flexible determination of the first calibration parameter. Attached Figure Description

[0042] Figure 1 A flowchart illustrating the data processing method provided in an embodiment of this application;

[0043] Figure 2 A flowchart illustrating the determination of the first calibration parameter provided in an embodiment of this application;

[0044] Figure 3 This is a schematic diagram of the process for obtaining the first attitude data provided in an embodiment of this application;

[0045] Figure 4 A schematic diagram illustrating the principle of determining the second calibration parameter provided in an embodiment of this application;

[0046] Figure 5 A schematic flowchart illustrating the process of obtaining contour data of a first contour provided in an embodiment of this application;

[0047] Figure 6 This is a schematic diagram of the structure for outputting target data to the projection plane, as provided in an embodiment of this application.

[0048] Figure 7 This is a schematic diagram of the structure of the data processing apparatus provided in the embodiments of this application. Detailed Implementation

[0049] The technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings.

[0050] It should be understood that the specific embodiments described herein are merely illustrative of this application and are not intended to limit this application.

[0051] In machine vision applications, the accurate calibration between the camera coordinate system where the image acquisition device is located and the projection coordinate system where the projection device is located has a decisive impact on the effectiveness of machine vision applications.

[0052] In practical applications, the calibration between the camera coordinate system and the projection coordinate system usually requires the use of at least two calibrators of known size set on the projection device. Furthermore, under the condition that the setting position and relative position of the at least two calibrators meet strict calibration requirements, the image acquisition device must acquire image data including the at least two calibrators and the position information of the at least two calibrators in the projection device in order to calibrate the internal and external parameters of the image acquisition device, that is, to calibrate the coordinate transformation parameters between the camera coordinate system and the projection coordinate system.

[0053] However, the above calibration method strictly relies on at least two calibrators arranged in a specified number and format. If the size, shape, or relative position of the calibrators does not meet the calibration conditions, the calibration operation cannot be performed. Furthermore, if the relative position between the image acquisition device and the projection device changes, at least two calibrators need to be reset and the calibration process repeated. Therefore, the above calibration method lacks flexibility.

[0054] To address the above issues, embodiments of this application provide a data processing method and apparatus. The data processing method provided in this application, after obtaining the attitude data (i.e., first attitude data) of a first contour projected onto a projection surface, can determine a first calibration parameter based on the first attitude data.

[0055] Thus, the data processing method provided in this application embodiment can determine the first calibration parameter based on the first posture data of the first contour projected on the projection surface, thereby realizing the flexible and automatic determination of the first calibration data based on the posture data of the first contour actually projected on the projection surface. This eliminates the dependence on at least two calibration objects during calibration in the relevant data. Even when the relative position between the image acquisition device and the projection surface changes, the first calibration parameter can be dynamically and accurately determined based on the first contour actually projected on the projection surface, thereby further improving the flexibility of determining the first calibration parameter.

[0056] It should be noted that the data processing method provided in this application embodiment can be implemented by a processor of an electronic device. The processor can be at least one of the following: Application Specific Integrated Circuit (ASIC), Digital Signal Processor (DSP), Digital Signal Processing Device (DSPD), Programmable Logic Device (PLD), Field Programmable Gate Array (FPGA), Central Processing Unit (CPU), controller, microcontroller, and microprocessor.

[0057] Figure 1 This is a flowchart illustrating the data processing method provided in the embodiments of this application, as shown below. Figure 1 As shown, the process may include steps 101 to 103:

[0058] Step 101: Obtain the first attitude data.

[0059] The first posture data includes the posture data of the first contour projected on the projection surface; the first contour corresponds to at least a portion of the contour of the first object in the first data acquired by the image acquisition device.

[0060] In one embodiment, the image acquisition device may include a two-dimensional camera, and correspondingly, the first data may include a two-dimensional image; for example, the image acquisition device may include a depth camera, and correspondingly, the first data may at least include depth data of a first object.

[0061] In one embodiment, there can be multiple image acquisition devices; for example, the types of each image acquisition device can be different, such as the first image acquisition device being a two-dimensional camera and the second image acquisition device being a depth camera; for example, the relative arrangement of the multiple image acquisition devices with the projection surface can be different, such as the distance between the first image acquisition device and the projection surface being a first distance and the distance between the second image acquisition device and the projection surface being a second distance.

[0062] In one implementation, the first object may include an object in a stationary state, such as an office desk and chair; for example, the first object may include an object that can move or move, such as a staff member or an animal; for example, there may be multiple first objects, and each first object may have at least one different type, motion state, and posture.

[0063] In one implementation, at least a portion of the outline of the first object can be obtained by analyzing the outline of the first object in the first data to obtain the overall outline of the first object, and then segmenting the overall outline of the first object.

[0064] In one embodiment, at least a portion of the outline of the first object can be determined by edge feature recognition of at least a portion of the first object in the first data, and the result of the edge feature recognition is determined as at least a portion of the outline of the first object.

[0065] In one embodiment, the projection surface may include a projection screen, which, for example, can reflect light projected onto the projection screen in at least one direction; for example, the projection screen may also have the function of image and / or video output.

[0066] In one implementation, the projection surface can have a certain degree of transparency, such as a holographic projection screen used to display holographic teaching data in a holographic lectern motion-sensing interaction.

[0067] In one implementation, the projection surface can be a planar structure; for example, the projection surface can have a three-dimensional structure, such as a combination of planar and curved surface structures.

[0068] In one implementation, the first pose data and the pose data of at least a portion of the contour of the first object in the first data may be the same. In this case, the image acquisition device and the projection surface may be set in a specified manner. For example, the specified manner may include the geometric center points of the image acquisition device and the projection surface being on the same horizontal plane, and the lens and optical center of the image acquisition device being parallel to the projection surface.

[0069] In one implementation, the first pose data may be different from the pose data of at least a portion of the contour of the first object in the first data; for example, the pose of the first contour represented by the first pose data may be different from the pose of at least one dimension of the pose of the at least portion of the contour, and this application embodiment does not limit this.

[0070] For example, the first pose data can be implemented in the following way:

[0071] If the first contour is detected to be projected onto the projection surface, the first contour projected onto the projection surface is collected to obtain the collection result. Feature recognition is performed on the first contour in the collection result to obtain the pose data of the first contour. For example, feature recognition of the first contour in the collection result can be achieved by a neural network. For example, the collection result can include image data or video data. For example, the first contour projected onto the projection surface can be collected by a two-dimensional image acquisition device.

[0072] Step 102: Determine the first calibration parameters based on the first attitude data.

[0073] The first calibration parameter includes the coordinate transformation parameter between the first coordinate system where the image acquisition device is located and the second coordinate system where the projection surface is located.

[0074] In one embodiment, the first coordinate system can be a three-dimensional coordinate system with the optical center of the image acquisition device as the origin.

[0075] In one embodiment, the second coordinate system may include a two-dimensional coordinate system with the coordinate point associated with the specified area on the projection surface as the origin; for example, the coordinate point associated with the specified area may include the geometric center point of the specified area, or it may include a point on the edge of the specified area, which is not limited in this embodiment; for example, the specified area may include a fixed area on the projection surface, or it may include a dynamically adjustable area on the projection surface.

[0076] In one implementation, the number of specified regions can be at least one. If the number of specified regions is multiple, the first calibration parameter can include a set of calibration parameters that is the same number as the number of specified regions.

[0077] In one implementation, the designated area can be randomly set or preset according to calibration requirements; for example, the designated area can be set according to at least one of the following factors: the setting method of the projection surface, the setting position of the projection surface relative to the image acquisition device, the geometry of the projection surface, the projection attributes of the projection surface, the viewing needs of the movie viewer, and the environment of the projection site.

[0078] In one implementation, the geometry of the specified region and the first contour can be the same; for example, the coordinate positions of the specified region and the first contour on the projection plane can be different, such as the geometric center point of the specified region being located at a first coordinate point on the projection plane, while the geometric center point of the first contour is located at a second coordinate point on the projection plane; for example, the geometry of the specified region and the first contour can be the same size, such as the specified region and the first contour being circles of the same size; for example, the size of the specified region and the first contour can be different, that is, the specified region and the first contour can have contours with the same geometry but different areas.

[0079] In one implementation, the designated region and the first contour may at least partially overlap; for example, when the designated region and the first contour have the same shape and size, they may seamlessly overlap; for example, when the designated region and the first contour are similar contours with the same geometric shape, if the area of ​​the designated region is smaller than that of the first contour, then the set of coordinate points of the designated region may be a proper subset of the set of coordinate points of the first contour; conversely, if the area of ​​the designated region is larger than that of the first contour, then the set of coordinate points of the first contour may be a proper subset of the set of coordinate points of the designated region; for example, the designated region and the first contour may partially overlap, such as when the set of coordinate points of the designated region and the set of coordinate points of the first contour have a non-empty intersection, and the non-empty intersection is a proper subset of both the set of coordinate points of the designated region and the set of coordinate points of the first contour. It should be noted that each of the above sets of coordinate points is a set of coordinate points on the projection plane.

[0080] In one implementation, the designated region and the first contour can be completely separated, that is, the set of coordinate points of the designated region and the set of coordinate points of the first contour do not intersect.

[0081] In one implementation, the pose of the first contour can be the same as the pose of the specified region. For example, under the condition that the first contour and the specified region are seamlessly overlapped, the first pose data and the second pose data can be the same. Correspondingly, under the condition that the first contour and the specified region are not seamlessly overlapped, the first pose data and the second pose data can have at least one dimension of pose difference.

[0082] In one implementation, the first calibration parameter may include coordinate transformation parameters between a first set of coordinate points in a first coordinate system and a second set of coordinate points in a second coordinate system; for example, the first set of coordinate points may include a set of at least three coordinate points in the first coordinate system; the second set of coordinate points may include a set of coordinate points in the second coordinate system with the same number of coordinate points as the first set of coordinate points.

[0083] In one implementation, the first calibration parameter can be represented in the form of a matrix.

[0084] For example, the first calibration parameter can be determined based on the first attitude data in any of the following ways:

[0085] The first pose data is analyzed to determine the specified contour corresponding to the specified part of the first object in the first contour. Feature detection is performed on the specified contour corresponding to the specified part of the first object to determine the distortion parameters of the specified contour. Then, the distortion parameters are inverted to obtain the inverse distortion parameters, and the inverse distortion parameters are determined as the first calibration parameters.

[0086] The first posture data is analyzed to determine the relative relationship between at least two specified parts of the first contour and the first object. The degree of change parameter of the relative relationship between the at least two specified parts is determined. Then, the degree of change parameter is inverted and the result of the inversion of the degree of change parameter is determined as the first calibration parameter.

[0087] Step 103: Process the first attitude data based on the first calibration parameters to obtain the second attitude data.

[0088] For example, the first calibration parameters and the first attitude data can both be represented in the form of matrices. In this way, the second attitude data can be obtained through data operations between matrices. Correspondingly, the second attitude data can also be represented in the form of matrices. This application embodiment does not limit this.

[0089] In one implementation, the attitude of at least one dimension of the first attitude data can be adjusted based on a first calibration parameter to obtain the second attitude data.

[0090] In one implementation, calibration parameters corresponding to the attitude to be adjusted can be determined from the first calibration parameters, and the first attitude data can be processed based on the calibration parameters corresponding to the attitude to be adjusted to obtain the second attitude data.

[0091] As can be seen from the above, the data processing method provided in this application embodiment, after obtaining the first posture data of the first contour projected on the projection surface, can determine the first calibration parameter between the first coordinate system where the image acquisition device is located and the second coordinate system where the projection surface is located based on the first posture data. Thus, the data processing method provided in this application embodiment, in the process of determining the first calibration parameter, not only eliminates the dependence on a specified calibration object in related technologies, but also can dynamically determine the first calibration parameter in real time based on the first posture data, thereby enabling automatic and more flexible determination of the first calibration parameter.

[0092] Based on the foregoing embodiments, the data processing method provided in this application, which determines the first calibration parameter based on the first attitude data, can be achieved through... Figure 2 The process shown is implemented as follows: Figure 2 A flowchart illustrating the determination of the first calibration parameter provided in an embodiment of this application is shown below. Figure 2 As shown, the process may include steps 1021 to 1022:

[0093] Step 1021: Determine the target attitude data.

[0094] In one implementation, the target attitude data may be preset based on actual calibration requirements; for example, the target attitude data may be stored in the storage space of an electronic device; for example, the target attitude data may be determined by the electronic device from calibration instruction information sent by a management device with which it has established a communication connection, and this application embodiment does not limit this.

[0095] In one implementation, the target pose data can be represented in the same form as the first pose data, for example, the target pose data and the first pose data can be represented in the form of a matrix with the same dimensions.

[0096] In one implementation, the target pose data may include text data describing calibration requirements; for example, the target pose data may include adjusting a first part of a first contour to a first pose and adjusting a second part of the first contour to a second pose.

[0097] In one implementation, the target pose data may include condition information in the calibration requirements; for example, the target pose data may include performing a calibration operation on the contour portion corresponding to the third part in the first contour if the size of the third part in the first contour is a specified size, and correspondingly, if the size of the third part in the first contour is different from the specified size, the calibration operation may not be performed on the contour portion in the first contour that is not the third part.

[0098] Step 1022: Determine the first calibration parameters based on the correspondence between the first attitude data and the target attitude data.

[0099] In one implementation, the correspondence between the first posture data and the target posture data may include the correspondence between the posture of the target part in the first posture data and the posture of the target part in the target posture data; for example, when the first object is a person, the target part may include the person's hand, and in this case, there may be a correspondence between the posture of the hand in the first posture data and the posture of the hand in the target posture data.

[0100] In one implementation, the correspondence between the first posture data and the target posture data may include the matching relationship between the posture of the target part in the first posture data and the posture of the target part in the target posture data. For example, if the hand posture in the first posture data is that the fingers are in a horizontal posture, while the hand posture in the target posture data is that the fingers are in a vertical posture, then the correspondence between the first posture data and the target posture data may include a weak matching degree between the finger postures of the hands in the two, that is, the difference between the finger postures of the hands in the two is 90 degrees or 270 degrees.

[0101] For example, the first calibration parameter can be determined based on the correspondence between the first attitude data and the target attitude data in any of the following ways:

[0102] The attitude information of at least one part in the first attitude data is obtained, and the attitude information of at least one corresponding part in the target attitude data is obtained. Then, the attitude information of at least one part in the first attitude data and the attitude information of at least one corresponding part in the target attitude data are matched to obtain the attitude difference of at least one part in the first attitude data and the target attitude data. The attitude difference is then quantized to obtain the quantization result, and the quantization result is determined as the first calibration parameter.

[0103] The contour dimension information of at least one part in the first posture data is obtained, and the contour dimension information of at least one corresponding part in the target posture data is obtained. Then, the difference between the two contour dimension information is statistically and quantitatively calculated, and the result of the statistical and quantitative calculation is determined as the first calibration parameter.

[0104] As can be seen from the above, in the data processing method provided in this application embodiment, after determining the target attitude data, the first calibration parameter can be determined based on the correspondence between the first attitude data and the target attitude data. Thus, under the condition that the target attitude data is controllable and adjustable, a first calibration parameter that meets various different calibration requirements can be obtained, thereby satisfying various different calibration requirements and / or calibration scenarios, further improving the flexibility of determining the first calibration parameter.

[0105] Based on the foregoing embodiments, the data processing method provided in this application, which determines the target attitude data, can be achieved through steps A1 to A2:

[0106] Step A1: In response to the attitude adjustment operation, obtain attitude adjustment data.

[0107] The attitude adjustment operation includes at least one attitude adjustment operation for at least one dimension of the first contour.

[0108] In one implementation, the posture adjustment operation may include a text input operation detected by a text input window created by the human-computer interaction mechanism of the electronic device; correspondingly, the posture adjustment data may include text data of posture adjustment for at least one dimension of the first contour, such as adjusting the fingers of the first object in the first contour to a horizontal posture; for example, the posture adjustment data may also include a combination of digital and text data of posture adjustment for at least one part of the first contour in at least one dimension, such as adjusting the thumb of the first object in the first contour to a posture with an angle of 15 degrees to the horizontal direction.

[0109] In one embodiment, the posture adjustment operation may include a touch adjustment operation, such as a sliding adjustment operation, input to the projection surface for at least one part of the first contour; correspondingly, the posture adjustment data may include the sliding amplitude obtained by tracking and detecting the sliding adjustment operation, wherein the magnitude of the sliding amplitude may represent the adjustment amplitude of the posture adjustment dimension targeted by the sliding adjustment operation.

[0110] Step A2: Determine the target attitude data based on the attitude adjustment data.

[0111] In one implementation, if the posture adjustment data contains only posture adjustment data for one dimension of a part of the first contour, then the posture adjustment data can be the target posture data; for example, if the posture adjustment data is text data or a combination of text and numbers, the text data or the combination of text and numbers can be recognized and converted to obtain the target posture data.

[0112] In one implementation, if the attitude adjustment data includes data for attitude adjustment of at least two parts of the first contour in at least one dimension, the attitude adjustment data can be sorted and combined according to the relative positional relationship of the at least two parts in the first contour, and the result of the sorting and combination can be determined as the target attitude data.

[0113] As can be seen from the above, the data processing method provided in this application embodiment can obtain attitude adjustment data in response to attitude adjustment operations, and then determine target attitude data based on the attitude adjustment data. Since the attitude adjustment operation can be flexibly switched according to different calibration requirements or calibration scenarios, the method of determining the target attitude data is more controllable and more flexible; and since the target attitude data is determined in response to the attitude adjustment operation, interactive determination of the target attitude data is realized.

[0114] Based on the foregoing embodiments, the data processing method provided in this application can also determine the target attitude data through steps B1 to B2:

[0115] Step B1: Obtain the pose data of the first object.

[0116] In one implementation, the pose data of the first object may include data representing the actual pose of the first object; for example, the pose data of the first object may represent the actual pose of the first object relative to a specified reference object, wherein the specified reference object may include a projection surface and / or an image acquisition device, and may also include other objects other than the projection surface and the image acquisition device.

[0117] In one implementation, the posture data of the first object can represent the overall posture of the first object. When the first object is a person, the overall posture of the first object can include the posture of the human body jumping upwards. For example, the posture data of the first object can include the posture of some parts of the first object. For instance, when the first object is a person, the posture data of the first object can include the posture of waving an arm.

[0118] In one embodiment, the posture data of the first object can be determined by analyzing and identifying at least one part of the first object in the first data acquired by the image acquisition device.

[0119] In one embodiment, the pose data of the first object can be obtained by: acquiring an image or video including the first object using a two-dimensional image acquisition device, then performing feature recognition on the image or video including the first object, and determining the result of the feature recognition as the pose data of the first object; for example, the image or video including the first object may contain a specified reference object, so that by performing feature recognition on the specified reference object and the first object in the image or video including the first object, the pose data of the first object relative to the specified reference object, i.e., the pose data of the first object, can be determined.

[0120] Step B2: Determine the target pose data as the pose data of the first object.

[0121] As can be seen from the above, in the data processing method provided in this application embodiment, after obtaining the posture data of the first object, the target posture data can be determined to be the posture data of the first object. Thus, since the posture of the first object is adjustable and controllable, the target posture data is also in an adjustable and controllable state, thereby further improving the flexibility and controllability of determining the first calibration parameter; and since the posture data of the first object represents the actual posture of the first object, the target posture data is consistent with the actual posture of the first object, thereby improving the accuracy of the target posture data.

[0122] Based on the foregoing embodiments, the data processing method provided in this application obtains the first attitude data, which can be obtained through... Figure 3 The flowchart shown is implemented as follows: Figure 3 This is a schematic diagram of the process for obtaining the first attitude data provided in an embodiment of this application, as shown below. Figure 3 As shown, the process may include steps 1011 to 1013:

[0123] Step 1011: Determine the second calibration parameter.

[0124] The second calibration parameter includes coordinate transformation parameters between the first and third coordinate systems; the third coordinate system includes a coordinate system with a specified coordinate point on the projection plane as the origin.

[0125] In one embodiment, the specified coordinate point on the projection surface may include a coordinate point on the edge of the projection surface; for example, the specified coordinate point on the projection surface may include the geometric center point of the projection surface, or a point that has a specified relative positional relationship with at least two edges or the geometric center point of the projection surface, and this application embodiment does not limit this.

[0126] In one embodiment, when the projection plane is a plane, both the third coordinate system and the second coordinate system can be two-dimensional coordinate systems located in the plane where the projection plane is located. For example, the third coordinate system and the second coordinate system can have a displacement and / or rotation relationship. For example, the third coordinate system and the second coordinate system can include a three-dimensional coordinate system of the plane where the projection plane is located, wherein, for example, the x-axis and y-axis of the third coordinate system and the second coordinate system are located in the projection plane, and the z-axis of the third coordinate system and the second coordinate system can be parallel to the normal direction of the projection plane.

[0127] In one embodiment, under the condition that the origin of the second coordinate system is the same as the origin of the third coordinate system, the second coordinate system and the third coordinate system can have a rotational correspondence; for example, under the condition that the x-axis and y-axis of the second coordinate system coincide with the x-axis and y-axis of the third coordinate system respectively, the second coordinate system and the third coordinate system can be the same coordinate system.

[0128] In one implementation, the second calibration parameter can be represented in the form of a matrix, but this application does not limit this.

[0129] For example, the second calibration parameter can be determined in the following way:

[0130] A designated coordinate point is marked on the projection surface, and a third coordinate system is established based on the mark. At least two coordinate points other than the designated coordinate point are identified and marked in the third coordinate system. Image data including the designated coordinate point on the projection surface and the at least two coordinate points other than the designated coordinate point are acquired by an image acquisition device. The image data is then analyzed to obtain the coordinate information of the designated coordinate point on the projection surface and the at least two coordinate points other than the designated coordinate point in the first coordinate system. Based on the correspondence between the coordinate information of the three coordinate points in the first coordinate system and the coordinate information of the three coordinate points in the third coordinate system, the second calibration parameter is determined.

[0131] Step 1012: Process the contour data of the second contour based on the second calibration parameters to obtain the contour data of the first contour.

[0132] The contour data of the second contour includes image data corresponding to at least a portion of the contours in the first data.

[0133] In one implementation, the contour data of the second contour can be determined by extracting features from the first data to obtain at least a partial contour, and then based on the depth information of the at least partial contour.

[0134] For example, processing the contour data of the second contour based on the second calibration parameters can be achieved in the following way:

[0135] Based on the matrix corresponding to the second calibration parameter, the coordinate information corresponding to the contour data of the second contour is cross-multiplied to obtain the contour data of the first contour.

[0136] Step 1013: Analyze the contour data of the first contour to obtain the first pose data.

[0137] In one implementation, the first pose data may be obtained by performing overall pose feature recognition on the contour data of the first contour.

[0138] As can be seen from the above, in the data processing method provided in this application embodiment, the posture data of the first contour projected on the projection surface is determined by processing at least a portion of the image data corresponding to the contours in the first data acquired by the image acquisition device using the second calibration parameter between the first coordinate system where the image acquisition device is located and the third coordinate system with a specified coordinate point on the projection surface as the origin. After obtaining the contour data of the first contour, the contour data of the first contour is then analyzed. Therefore, since the relative positional relationship between the image acquisition device and the projection surface is relatively clear, the second calibration parameter can objectively reflect the relative positional relationship between the image acquisition device and the projection surface. Thus, the contour data of the first contour obtained by processing the contour data of the second contour based on the second calibration parameter can comprehensively and objectively include the relative positional relationship between the image acquisition device and the projection surface, thereby improving the objectivity and accuracy of the first posture data.

[0139] Based on the foregoing embodiments, the data processing method provided in this application can determine the second calibration parameter through steps C1 to C2:

[0140] Step C1: Determine the third calibration parameter between the third coordinate system and the fourth coordinate system.

[0141] The fourth coordinate system includes a coordinate system containing any three coordinate points on the projection surface excluding the specified point; the fourth coordinate system uses one of the three coordinate points as the origin; the three coordinate points are not collinear.

[0142] In one implementation, any three coordinate points can be pre-marked on the projection surface; for example, any three coordinate points can be highly recognizable coordinate points on the projection surface, such as coordinate points on intersecting edges on the projection surface.

[0143] In one embodiment, when the projection plane is a plane, the fourth coordinate system, the third coordinate system, and the second coordinate system can all be two-dimensional coordinate systems located in the plane of the projection plane; for example, the third coordinate system and the fourth coordinate system can be adjusted to the second coordinate system by rotation and / or translation; for example, the third coordinate system and the fourth coordinate system can include a three-dimensional coordinate system of the plane of the projection plane, wherein, for example, the x-axis and y-axis of the third coordinate system and the fourth coordinate system are located in the projection plane, and the z-axis of the third coordinate system and the fourth coordinate system can be parallel to the normal direction of the projection plane.

[0144] For example, the third calibration parameter can be implemented in the following way:

[0145] After determining the relative positional relationship between any three coordinate points, and establishing the fourth coordinate system by determining the origin of the fourth coordinate system, the coordinates of any three coordinate points in the fourth coordinate system are determined to obtain the third set of coordinate points. Based on the relative positional relationship between any three coordinate points, the coordinate points corresponding to the above three coordinate points are determined in the third coordinate system, and the coordinates of the corresponding coordinate points in the third coordinate system are determined to obtain the fourth set of coordinate points. Then, the third calibration parameter is determined based on the coordinates of the corresponding points in the third and fourth set of coordinate points.

[0146] Step C2: Determine the second calibration parameter based on the third calibration parameter.

[0147] For example, determining the second calibration parameter based on the third calibration parameter can be achieved in any of the following ways:

[0148] At least some of the calibration parameters in the third calibration parameters are weighted, and the weighted result is determined as the second calibration parameter.

[0149] At least some of the calibration parameters in the third calibration parameters are smoothed, and the result of the smoothing is determined as the second calibration parameters.

[0150] As can be seen from the above, in the data processing method provided in this application embodiment, after determining the third calibration parameter between the third coordinate system and the fourth coordinate system, the second calibration parameter can be determined based on the third calibration parameter. Since the fourth coordinate system includes any three coordinate points on the projection surface excluding the specified point, and takes one of these three coordinate points as its origin, the third calibration parameter between the third and fourth coordinate systems can represent the coordinate transformation parameter between the coordinate system on the projection surface with the specified coordinate point as its origin and any other coordinate system. In other words, the third calibration parameter can more objectively and comprehensively represent the coordinate transformation parameter between different coordinate systems within the projection surface. Therefore, the second calibration parameter determined based on the third calibration parameter can comprehensively and objectively reflect the coordinate transformation relationship between the first coordinate system where the image acquisition device is located and the third coordinate system with the specified coordinate point as its origin on the projection surface.

[0151] Based on the foregoing embodiments, the data processing method provided in this application, which determines the second calibration parameter based on the third calibration parameter, can be implemented through steps D1 to D3:

[0152] Step D1: Obtain the first coordinate data and the second coordinate data of any three coordinate points.

[0153] The first coordinate data includes the coordinate data of any three coordinate points in the first coordinate system; the second coordinate data includes the coordinate data of any three coordinate points in the fourth coordinate system.

[0154] In one implementation, the first coordinate system can be a three-dimensional coordinate system, so each coordinate data in the first coordinate data can include coordinate data in three dimensions; for example, the fourth coordinate system can be a three-dimensional coordinate system, so each coordinate data in the fourth coordinate data can include coordinate data in three dimensions.

[0155] In one embodiment, the first coordinate data may be determined by depth image data including any three coordinate points acquired by the image acquisition device, and distance information of the image acquisition device relative to the projection surface.

[0156] In one implementation, the second coordinate data may be determined after the fourth coordinate system is determined.

[0157] Step D2: Determine the fourth calibration parameter between the first coordinate data and the second coordinate data.

[0158] For example, the fourth calibration parameter can be determined based on the correspondence between the coordinate data of the coordinate points in the first coordinate data and the coordinate data of the corresponding coordinate points in the fourth coordinate data. This application embodiment does not limit this.

[0159] Step D3: Process the fourth calibration parameter based on the third calibration parameter to determine the second calibration parameter.

[0160] In one implementation, the second calibration parameter can be determined in any of the following ways:

[0161] The fourth calibration parameter is corrected in at least one dimension based on the third calibration parameter, and the result of the correction is determined as the second calibration parameter.

[0162] Based on the rotation and / or displacement information between the third and fourth coordinate systems contained in the third calibration parameters, the fourth calibration parameters are corrected for rotation and / or displacement dimensions, and the correction result is determined as the second calibration parameter.

[0163] Figure 4 A schematic diagram illustrating the principle of determining the second calibration parameter provided in this application embodiment is shown below. Figure 4 As shown, the first object 401 can be located between the projection surface 402 and the image acquisition device 403; wherein, the coordinate system of the image acquisition device 403 can be a first coordinate system 404, and the origin of the first coordinate system 404 can be the optical center O of the image acquisition device 403. c The first coordinate system 404 may include O c X c O c Y c And O c Z c A three-dimensional coordinate system is formed.

[0164] exist Figure 4 In the middle, the third coordinate system 405 can be based on the geometric center O of the projection plane 402. s A three-dimensional coordinate system with the origin as the coordinate system; wherein, the third coordinate system 405 may include O. s X s O s Y s And O s Z s A three-dimensional coordinate system is formed, where O s Z s The geometric center O can be found at the projection plane 402. s The normal to the projection plane 402.

[0165] exist Figure 4In the middle, the fourth coordinate system 406 may include the projection plane 402 excluding the geometric center O. s Any three coordinate points other than P1, P2, and P3, wherein the origin of the fourth coordinate system 406 can be P1; the fourth coordinate system 406 can include points O t X t O t Y t And O t Z t The three-dimensional coordinate system formed, O t Z t It can be the normal to the projection plane 402 passing through P1.

[0166] exist Figure 4 In this context, the first contour 407 may include the overall contour of the first object 401; for example, in... Figure 4 In the middle, the second calibration parameter T CS This may include coordinate transformation parameters between the first coordinate system 404 and the third coordinate system 405; and the third calibration parameter T. TS This may include coordinate transformation parameters between the third coordinate system 405 and the fourth coordinate system 406; and the fourth calibration parameter T. CT It can include coordinate transformation parameters between the first coordinate system 404 and the fourth coordinate system 406.

[0167] For example, the third coordinate system 405 and the fourth coordinate system 406 can be determined based on the size information and / or geometric information of the projection surface 402.

[0168] For example, the coordinate data of any three coordinate points P1, P2, and P3 in the fourth coordinate system 406, namely the second coordinate data, can be determined. The image data including these three coordinate points P1, P2, and P3, acquired by the image acquisition device 403, can also determine the coordinate data of these three coordinate points in the first coordinate system 404, namely the first coordinate data. Thus, using the first coordinate data and the second coordinate data, the fourth calibration parameter T between the first coordinate system 404 and the fourth coordinate system 406 can be determined. CT .

[0169] For example, in Figure 4 In this process, based on the second coordinate data and the coordinate data of the coordinate points corresponding to any three coordinate points in the third coordinate system 405, the third calibration parameter T between the third coordinate system 405 and the fourth coordinate system 406 can be determined. TS .

[0170] For example, in determining the fourth calibration parameter T CT and the third calibration parameter T TS Then, based on the third calibration parameter TTS For the fourth calibration parameter T CT The process is performed to determine the second calibration parameter T. CS .

[0171] As can be seen from the above, in the data processing method provided in this application embodiment, the second calibration parameter is determined based on the fourth calibration parameter between the first coordinate system and the fourth coordinate system, and the third calibration parameter between the third coordinate system and the fourth coordinate system. That is to say, the second calibration parameter includes the coordinate transformation parameter between any coordinate system in the projection plane and the coordinate system with the specified coordinate point as the origin, as well as the coordinate transformation parameter between the first coordinate system and any coordinate system in the projection plane. In other words, the second calibration parameter can not only characterize the relative positional relationship between the image acquisition device and the projection plane, but also characterize the pose transformation relationship between any coordinate system on the projection plane and the third coordinate system, so that the second calibration parameter can accurately reflect the coordinate transformation relationship between any point on the projection plane and the image acquisition device.

[0172] Based on the foregoing embodiments, the data processing method provided in this application involves processing the contour data of the second contour based on the second calibration parameters to obtain the contour data of the first contour, which can be achieved through... Figure 5 The process shown is implemented as follows: Figure 5 This is a schematic diagram of the process for obtaining contour data of the first contour provided in an embodiment of this application, such as... Figure 5 As shown, the process may include steps 501 to 503:

[0173] Step 501: Perform a view transformation on the contour data of the second contour based on the second calibration parameters to obtain view contour data.

[0174] In one implementation, the view contour data may include three-dimensional contour data corresponding to the contour data of the second contour.

[0175] For example, triangular patches can be constructed based on the spatial points corresponding to every three horizontally and vertically adjacent pixels in the first data. By combining the constructed triangular patches, the contour data of the three-dimensional patch model of the first object, such as the human body, i.e., the second contour, can be obtained. Furthermore, the spatial position of the model is referenced to the first coordinate system.

[0176] For example, the contour data of the three-dimensional patch model of the first object, i.e., the second contour, can be processed through the graphics rendering pipeline; for example, the model-view transformation of the graphics rendering pipeline can be constructed based on the second calibration parameters. In this way, by processing the contour data of the geothermal contour through the graphics rendering pipeline, the view contour data can be obtained.

[0177] Step 502: Obtain the projection parameters of the projection surface.

[0178] In one embodiment, the projection parameters of the projection surface may include at least one of the following: the physical size, structure, shape, and resolution of the projection surface.

[0179] Step 503: Perform orthogonal projection processing on the view contour data based on the projection parameters to obtain the contour data of the first contour.

[0180] For example, projection parameters can be set in the graphics rendering pipeline, and the view contour data can be orthogonally projected through the graphics rendering pipeline with the projection parameters set to obtain the contour data of the first contour.

[0181] For example, the projection effect of the contour data of the first contour onto the projection surface can be as follows: Figure 4 The first contour 407 is shown in the diagram. (By...) Figure 7 It can be seen that the first contour 407 has a certain degree of inclination relative to the horizontal edge of the projection surface 402. Under the condition that the first object 401 stands vertically on a plane perpendicular to the projection surface 402, there is a deviation between the posture of the first contour 407 and the actual posture of the first object 401.

[0182] For example, under the conditions that the first object 401 is a teacher, the projection surface 402 is a holographic projection screen, and the image acquisition device 403 is a depth camera, after the depth information of the teacher is acquired by the depth camera, the depth information is processed by the graphics rendering pipeline based on the second calibration parameters and the projection parameters of the projection surface to obtain the outline image of the teacher that can be projected onto the projection surface, namely the first outline 407.

[0183] As can be seen from the above, the data processing method provided in this application embodiment can perform view transformation on the contour data of the second contour based on the second calibration parameters to obtain view contour data, and can also process the view contour data based on the projection parameters of the projection surface to obtain the contour data of the first contour. This makes the contour data of the first contour not only correct the distortion caused by the spatial positional relationship between the image acquisition device and the projection surface, but also meet the actual projection requirements of the projection surface, thereby reducing the distortion probability of the contour data of the first contour.

[0184] Based on the foregoing embodiments, the data processing method provided in this application may further include steps E1 to E3:

[0185] Step E1: Configure and render the target outline and the second object to obtain the target data.

[0186] The second object includes at least a virtual object; the pose data of the target contour is the second pose data.

[0187] In one implementation, the pose of the first contour can be adjusted in at least one dimension based on the second pose data, and the first contour after pose adjustment can be determined as the target contour; for example, the first contour after pose adjustment, i.e., the target contour, can be... Figure 4 The target contour 408 in the example; for example, the target contour 408 may be the same as the actual pose of the first object 401.

[0188] In one implementation, the second object may include at least one virtual object rendered by the electronic device; for example, provided that the second object includes at least two virtual objects, at least one of the following: type, color, size, and relative positional relationship between the virtual objects and the first object may be different.

[0189] In one implementation, the second object may include a physical object and a virtual object; for example, if the first object is a teacher, the second object may include at least one virtual object rendered by an electronic device and at least one physical object; for example, the physical object may include at least one of a student object and a teaching aid object.

[0190] In one approach, configuration data can be determined first, then a second object can be determined based on the configuration data, and then the target contour 408 and the second object can be configured and rendered based on the configuration data to obtain target data. For example, the configuration data may include information on configuring at least one of the following data for the first contour and the second object after the pose adjustment: time order, spatial order, rendering color, rendering brightness, rendering contrast, shape and size, whether to follow in real time, and whether to interact.

[0191] Step E2: Obtain the trajectory information of the target contour on the projection plane.

[0192] In one embodiment, the trajectory information may include the movement trajectory information of the target contour on the projection plane, corresponding to the actual movement trajectory of the first object.

[0193] In one implementation, the trajectory information may include the predicted trajectory information of the target outline on the projection plane at future moments, obtained by tracking and analyzing the actual movement trajectory of the first object.

[0194] In one implementation, the trajectory information may include the overall movement trajectory information of the first object or target contour, or the movement trajectory information of a part of the first object or target contour. For example, if the first object is a teacher, the trajectory information may include the movement trajectory information of the teacher's hand.

[0195] For example, trajectory information can be determined by tracking and identifying the historical and current movement trajectories of the first object and / or target contour.

[0196] Step E3: Based on the trajectory information, output the target data to the projection surface.

[0197] In one implementation, target data can be dynamically output in the projection plane based on trajectory information.

[0198] Figure 6 This is a schematic diagram illustrating the structure of outputting target data to a projection plane, as provided in an embodiment of this application. Figure 6 As shown, target data 601 may include the overall outline of the teacher, wherein the posture of the teacher's arms and hands may be dynamically changing; for example, the overall outline of the teacher that is consistent with the overall movement trajectory of the teacher can be output in real time on the projection surface 402; for example, if the second object includes a virtual object, a virtual object may be added to at least one part of the overall outline of the teacher; for example, the interaction effect between the overall outline of the teacher and the virtual object may be rendered on the projection surface 402, such as the bouncing phenomenon that occurs when an elastic ball hits the teacher's body during a fall.

[0199] Under the condition that the projection surface 402 is a holographic projection surface and the teacher's outline in the projection surface 402 is consistent with the teacher's actual posture, students can see that the teacher's outline in the projection surface 402 coincides with the teacher's actual outline; for example, the teacher's outline rendered in the projection surface 402 can be used for the background calculation of holographic somatosensory interaction, so that students can obtain a realistic interactive feeling between the teacher's outline and the virtual object in real time.

[0200] As can be seen from the above, the data processing method provided in this application embodiment can configure and render the target contour and the second object to obtain target data, and output the target data to the projection surface based on the trajectory information of the target contour on the projection surface. Therefore, the data processing method provided in this application embodiment can realize interactive rendering of the virtual and real combination of the target contour of the first object on the projection surface based on the first calibration data.

[0201] Based on the foregoing embodiments, this application also provides a data processing device 7. Figure 7 This is a schematic diagram of the structure of the data processing device 7 provided in the embodiments of this application, as shown below. Figure 7 As shown, the device 7 may include:

[0202] The determining module 701 is used to obtain first posture data; wherein, the first posture data includes posture data of a first contour projected on the projection surface; the first contour corresponds to at least a portion of the contour of the first object in the first data acquired by the image acquisition device;

[0203] The determination module 701 is further configured to determine first calibration parameters based on the first attitude data; wherein the first calibration parameters include coordinate transformation parameters between the first coordinate system where the image acquisition device is located and the second coordinate system where the projection surface is located.

[0204] The processing module 702 is used to process the first attitude data based on the first calibration parameters to obtain the second attitude data.

[0205] In some implementations, the determining module 701 is used to determine target attitude data; and to determine first calibration parameters based on the correspondence between the first attitude data and the target attitude data.

[0206] In some implementations, the determining module 701 is configured to obtain attitude adjustment data in response to an attitude adjustment operation; and determine target attitude data based on the attitude adjustment data; wherein the attitude adjustment operation includes at least an attitude adjustment operation for at least one dimension of the first contour.

[0207] In some implementations, the determining module 701 is used to obtain the posture data of the first object and determine the target posture data as the posture data of the first object.

[0208] In some embodiments, the determining module 701 is used to determine the second calibration parameters; wherein the second calibration parameters include coordinate transformation parameters between the first coordinate system and the third coordinate system; the third coordinate system includes a coordinate system with a specified coordinate point on the projection plane as the origin;

[0209] The determining module 701 is used to process the contour data of the second contour based on the second calibration parameters to obtain the contour data of the first contour; wherein, the contour data of the second contour includes image data corresponding to at least a portion of the contours in the first data.

[0210] The processing module 702 is used to analyze the contour data of the first contour to obtain the first pose data.

[0211] In some implementations, the determining module 701 is used to determine a third calibration parameter between the third coordinate system and the fourth coordinate system; wherein, the fourth coordinate system includes a coordinate system containing any three coordinate points on the projection plane excluding the specified point; the fourth coordinate system uses one of the three coordinate points as the origin; the three coordinate points are not collinear;

[0212] The determination module 701 is used to determine the second calibration parameter based on the third calibration parameter.

[0213] In some implementations, the determining module 701 is used to obtain first coordinate data and second coordinate data of any three coordinate points; wherein, the first coordinate data includes the coordinate data of any three coordinate points in a first coordinate system; and the second coordinate data includes the coordinate data of any three coordinate points in a fourth coordinate system.

[0214] The determination module 701 is used to determine the fourth calibration parameter between the first coordinate data and the second coordinate data;

[0215] The processing module 702 is used to process the fourth calibration parameter based on the third calibration parameter to determine the second calibration parameter.

[0216] In some implementations, the determining module 701 is used to perform a view transformation on the contour data of the second contour based on the second calibration parameters to obtain view contour data.

[0217] The processing module 702 is used to obtain the projection parameters of the projection surface; and to perform orthogonal projection processing on the view contour data based on the projection parameters to obtain the contour data of the first contour.

[0218] In some embodiments, the processing module 702 is configured to perform configuration rendering on the target contour and the second object to obtain target data; wherein, the second object includes at least a virtual object; and the pose data of the target contour is the second pose data.

[0219] Processing module 702 is used to obtain the trajectory information of the target contour on the projection plane;

[0220] The data processing device also includes an output module for outputting target data to the projection surface based on trajectory information.

[0221] Based on the foregoing embodiments, this application also provides an electronic device, including a processor and a memory, wherein the memory stores a computer program, which, when executed by the processor of the electronic device, can implement the data processing method provided in any of the preceding embodiments.

[0222] It should be noted that the aforementioned processor can be at least one of ASIC, DSP, DSPD, PLD, FPGA, CPU, controller, microcontroller, and microprocessor.

[0223] The aforementioned memory can be volatile memory, such as random access memory (RAM); or non-volatile memory, such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid state disk (SSD); or a combination of the above types of memory, and provides instructions and data to the processor.

[0224] For example, the determining module 701, processing module 702, and output module in the data processing device 7 can be implemented by the processor of the electronic device.

[0225] Based on the foregoing embodiments, this application also provides a computer-readable storage medium storing a computer program that, when executed by a processor of an electronic device, can implement the data processing method as described in any of the preceding embodiments.

[0226] The description of the various embodiments above tends to emphasize the differences between the various embodiments. The similarities or similarities between them can be referred to, and for the sake of brevity, they will not be repeated here.

[0227] The methods disclosed in the various method embodiments provided in this application can be arbitrarily combined to obtain new method embodiments without conflict.

[0228] The features disclosed in the various product embodiments provided in this application can be arbitrarily combined without conflict to obtain new product embodiments.

[0229] The features disclosed in the various method or device embodiments provided in this application can be arbitrarily combined without conflict to obtain new method or device embodiments.

[0230] It should be noted that the aforementioned computer-readable storage media can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM), etc.; or it can be various electronic devices that include one or any combination of the above-mentioned memories, such as mobile phones, computers, tablet devices, personal digital assistants, etc.

[0231] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0232] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0233] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware nodes. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of this application.

[0234] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. 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 program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, 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, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0235] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0236] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0237] The above are merely preferred embodiments of this application and do not limit the patent scope of this application. Any equivalent structural or procedural transformations made using the content of this application's specification and drawings, or direct or indirect applications in other related technical fields, are similarly included within the patent protection scope of this application.

Claims

1. A data processing method, wherein, The method comprises: obtaining first attitude data based on second calibration parameters; wherein the first attitude data comprises attitude data of a first contour projected on a projection surface; the first contour corresponds to at least part of a contour of a first object in first data collected by an image collection device; the second calibration parameters comprise coordinate conversion parameters between a first coordinate system and a third coordinate system; the third coordinate system comprises a coordinate system with a designated coordinate point on the projection surface as a coordinate origin; the third coordinate system and a second coordinate system are two-dimensional coordinate systems or three-dimensional coordinate systems located in a plane in which the projection surface is located; determining first calibration parameters based on the first attitude data and target attitude data; wherein the first calibration parameters comprise coordinate conversion parameters between the first coordinate system in which the image collection device is located and the second coordinate system in which the projection surface is located; the target attitude data is determined based on an attitude adjustment operation or based on the attitude of the first object; processing the first attitude data based on the first calibration parameters to obtain second attitude data.

2. The method of claim 1, wherein, The determination of the first calibration parameters based on the first attitude data and the target attitude data comprises: determining the target attitude data; determining the first calibration parameters based on the correspondence between the first attitude data and the target attitude data.

3. The method of claim 2, wherein, The determination of the target attitude data comprises: obtaining attitude adjustment data in response to the attitude adjustment operation; wherein the attitude adjustment operation at least comprises an operation of adjusting the attitude of at least one dimension of the first contour; determining the target attitude data based on the attitude adjustment data.

4. The method of claim 2, wherein, The determination of the target attitude data comprises: obtaining attitude data of the first object; determining the target attitude data as the attitude data of the first object.

5. The method of claim 1, wherein, The obtaining of the first attitude data based on the second calibration parameters comprises: determining the second calibration parameters; processing contour data of a second contour based on the second calibration parameters to obtain contour data of the first contour; wherein the contour data of the second contour comprises image data corresponding to the at least part of the contour in the first data; analyzing the contour data of the first contour to obtain the first attitude data.

6. The method of claim 5, wherein, The determination of the second calibration parameters comprises: determining third calibration parameters between the third coordinate system and a fourth coordinate system; wherein the fourth coordinate system comprises a coordinate system comprising any three coordinate points on the projection surface except the designated coordinate point; the fourth coordinate system takes one of the any three coordinate points as a coordinate origin; the any three coordinate points are not collinear; determining the second calibration parameters based on the third calibration parameters.

7. The method of claim 6, wherein, The determination of the second calibration parameters based on the third calibration parameters comprises: obtaining first coordinate data and second coordinate data of the any three coordinate points; wherein the first coordinate data comprises coordinate data of the any three coordinate points in the first coordinate system; the second coordinate data comprises coordinate data of the any three coordinate points in the fourth coordinate system; determining a fourth calibration parameter between the first coordinate data and the second coordinate data; processing the fourth calibration parameter based on the third calibration parameter to determine the second calibration parameter.

8. The method of claim 5, wherein, The processing of the profile data of the second profile based on the second calibration parameter to obtain the profile data of the first profile comprises: view transformation of the profile data of the second profile based on the second calibration parameter to obtain view profile data; obtaining projection parameters of the projection surface; orthogonal projection processing of the view profile data based on the projection parameters to obtain the profile data of the first profile.

9. The method of claim 1, wherein, The method further comprises: configuring rendering of a target profile and a second object to obtain target data; wherein the second object at least comprises a virtual object; the pose data of the target profile is the second pose data; obtaining trajectory information of the target profile on the projection surface; outputting the target data to the projection surface based on the trajectory information.

10. A data processing apparatus, wherein, The device comprises: a determination module configured to obtain first pose data based on a second calibration parameter; wherein the first pose data comprises pose data of a first profile projected on a projection surface; the first profile corresponds to at least part of a profile of a first object in first data collected by an image collection device; the second calibration parameter comprises coordinate conversion parameters between a first coordinate system and a third coordinate system; the third coordinate system comprises a coordinate system with a specified coordinate point on the projection surface as a coordinate origin; the third coordinate system and a second coordinate system are two-dimensional coordinate systems or three-dimensional coordinate systems located in a plane where the projection surface is located; the determination module is further configured to determine a first calibration parameter based on the first pose data and target pose data; wherein the first calibration parameter comprises coordinate conversion parameters between the first coordinate system where the image collection device is located and the second coordinate system where the projection surface is located; the target pose data is determined based on a pose adjustment operation or based on the pose of the first object; a processing module configured to process the first pose data based on the first calibration parameter to obtain second pose data.

Citation Information

Patent Citations

  • Camera-based laser projection recognition automatic guide positioning and real-time correction method

    CN112991467A

  • Gesture recognition method and apparatus based on projector and camera

    WO2019128088A1