Large screen fusion method and computer readable storage medium

By integrating servers and computer-readable storage media, the integration of multi-screen large screens is achieved, which solves the problem of projector models limitation in the prior art, and realizes the seamless connection and cost advantages of multi-screens.

CN119232896AActive Publication Date: 2024-12-31FUJIAN STAR NET EVIDEO INFORMATION SYST CO LTD

Patent Information

Application Number
CN202310785682.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-29
Publication Date
2024-12-31
Estimated Expiration
2043-06-29

AI Technical Summary

Technical Problem

Existing large-screen devices bind geometric correction and fusion splicing functions to projector models, limiting the selection and dynamic adjustment of projector models, and failing to effectively realize large-screen fusion with multi-screen.

Method used

The fusion server obtains decoded material images, obtains configuration information in real time, calculates the number of grid rows and columns, creates canvas and mesh them, maps the material pixels to the display screens of each curtain, and realizes the fusion of multi-screens with large screens , and supports geometric correction, masking processing and edge fusion.

Benefits of technology

The centralization of the multi-screen large-screen fusion function is achieved, which offsets the limitations on projector models and has cost advantages. It supports dynamic adjustment of the number of curtains and splicing screens to achieve seamless connection effect.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119232896A_ABST
    Figure CN119232896A_ABST
Patent Text Reader

Abstract

The invention discloses a large screen fusion method and a computer readable storage medium, and the method comprises the steps: a fusion server obtains a decodable material image and configuration information, and calculates the number of screens according to the configuration information; calculating a first grid row number and a first grid column number according to a preset server maximum decoding resolution width, a screen resolution width and a screen number; creating a canvas according to the first grid row number, the first grid column number, the screen resolution height and the screen resolution width, and performing grid division on the canvas to obtain a first grid; sequentially mapping material pixels of each material layer image in the decodable material image into each first grid according to the size of the first grid, a preset fusion band width and the number of display screens corresponding to each curtain from left to right and from top to bottom; and projecting the material pixels in each first grid to each display screen of each curtain in the configuration information. According to the invention, large-screen fusion of multiple curtains can be realized at the same time.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of image display technology, and in particular to a large-screen fusion method and a computer-readable storage medium. Background Art

[0002] At present, large-screen devices have become a trend, whether in entertainment venues or exhibitions. There are more and more application scenarios for arc, angle, and skybox splicing displays, and geometric correction, fusion, and splicing functions have become rigid requirements for equipment. However, many large-screen devices on the market currently bind the geometric correction, fusion, and splicing functions to the projector, limiting the projector model. In addition, the equipment on the market cannot dynamically adjust the number and area of ​​projections that users need to increase, and even requires the replacement of equipment. Summary of the invention

[0003] The technical problem to be solved by the present invention is to provide a large-screen fusion method and a computer-readable storage medium, which can realize the large-screen fusion of multiple screens at the same time.

[0004] In order to solve the above technical problems, the technical solution adopted by the present invention is: a large screen fusion method, comprising:

[0005] The fusion server obtains a decodable material image, wherein the decodable material image is formed by stacking at least one layer of material layer images, and the at least one layer of material layer images is obtained by segmenting the material image to be displayed;

[0006] The fusion server acquires configuration information in real time, the configuration information including the number of screens and the number of display screens corresponding to each screen, and calculates the number of screens according to the number of screens and the number of display screens corresponding to each screen;

[0007] Calculate the number of first grid rows and the number of first grid columns according to the preset maximum decoding resolution width of the server and the screen resolution width and the number of screens;

[0008] Creating a canvas according to the first number of grid rows, the first number of grid columns, the screen resolution height, and the screen resolution width, and dividing the canvas into grids according to the first number of grid rows and the first number of grid columns to obtain a first grid;

[0009] Mapping the material pixels of each material layer image in the decodable material image to each first grid in sequence from left to right and from top to bottom according to the size of the first grid, the preset fusion band width, and the number of display screens corresponding to each curtain;

[0010] The material pixels in each first grid are projected onto each display screen of each screen in the configuration information respectively.

[0011] The present invention also provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the method described above is implemented.

[0012] The beneficial effects of the present invention are as follows: the present invention can concentrate the functions of large-screen fusion into one embedded device, offsetting the restrictions on projector models and having cost advantages; dynamically identifying the number of shared screens and the number of spliced ​​screens of each screen through configuration information, the materials to be displayed on multiple screens can be processed at the same time, and the large-screen fusion function of multiple screens can be realized at the same time. BRIEF DESCRIPTION OF THE DRAWINGS

[0013] Figure 1 A flowchart of a large-screen fusion method of the present invention;

[0014] Figure 2 This is a flow chart of a method according to Embodiment 1 of the present invention;

[0015] Figure 3 Schematic diagram of mapping between decodable material images and canvas according to the first embodiment of the present invention;

[0016] Figure 4 Schematic diagram of adding rows and columns to the first grid in the first embodiment of the present invention Figure 1 ;

[0017] Figure 5 Schematic diagram of adding rows and columns to the first grid in the first embodiment of the present invention Figure 2 ;

[0018] Figure 6 A schematic diagram of the grid point numbering and index trend of the second grid in the first embodiment of the present invention;

[0019] Figure 7 Schematic diagram of distortion correction processing according to the first embodiment of the present invention;

[0020] Figure 8 This is a schematic diagram of the point debugging mask effect of the first embodiment of the present invention;

[0021] Fig. 9 This is a schematic diagram of the image debugging mask effect according to the first embodiment of the present invention;

[0022] Fig.10 This is a schematic diagram of the effect of edge fusion processing of the fusion zone in the first embodiment of the present invention;

[0023] Fig.11 This is a schematic diagram of one machine and two merchants controlling the first embodiment of the present invention. DETAILED DESCRIPTION

[0024] In order to explain the technical content, achieved objectives and effects of the present invention in detail, the following is a detailed description in conjunction with the implementation methods and the accompanying drawings.

[0025] See also Figure 1 , a large screen fusion method, comprising:

[0026] The fusion server obtains a decodable material image, wherein the decodable material image is formed by stacking at least one layer of material layer images, and the at least one layer of material layer images is obtained by segmenting the material image to be displayed;

[0027] The fusion server acquires configuration information in real time, the configuration information including the number of screens and the number of display screens corresponding to each screen, and calculates the number of screens according to the number of screens and the number of display screens corresponding to each screen;

[0028] Calculate the number of first grid rows and the number of first grid columns according to the preset maximum decoding resolution width of the server and the screen resolution width and the number of screens;

[0029] Creating a canvas according to the first number of grid rows, the first number of grid columns, the screen resolution height, and the screen resolution width, and dividing the canvas into grids according to the first number of grid rows and the first number of grid columns to obtain a first grid;

[0030] Mapping the material pixels of each material layer image in the decodable material image to each first grid in sequence from left to right and from top to bottom according to the size of the first grid, the preset fusion band width, and the number of display screens corresponding to each curtain;

[0031] The material pixels in each first grid are projected onto each display screen of each screen in the configuration information respectively.

[0032] From the above description, it can be seen that the beneficial effect of the present invention is that the large-screen fusion function of multiple screens can be realized through an embedded device. At the same time, the number of shared screens and the number of spliced ​​screens of each screen can be dynamically identified through configuration information, and the materials to be displayed on multiple screens can be processed at the same time, and the large-screen fusion function of multiple screens can be realized at the same time.

[0033] Furthermore, after mapping the material pixels of each material layer image in the decodable material image to each first grid in order from left to right and from top to bottom according to the size of the first grid and the preset fusion band width, the method further includes:

[0034] When an instruction to add rows and columns is monitored, rows and columns are added to each first grid respectively according to the number of second grid rows and the number of second grid columns and the line type of added rows and the line type of added columns preset in the instruction to add rows and columns, so as to obtain a second grid;

[0035] Determine two triangles corresponding to each second grid according to the grid points of each second grid in each first grid, and associate each triangle with the material pixels located in the area of ​​each triangle;

[0036] When a correction movement instruction is heard, the vertices or edges of the corresponding triangle are moved according to the movement instruction, and distortion correction processing is performed on the material pixels corresponding to each triangle containing the moved vertices or edges in real time according to the positions of the vertices or edges of the triangle before and after the movement.

[0037] It can be seen from the above description that the geometric correction function can be realized.

[0038] Furthermore, the preset fusion band width is calculated according to the width of the first grid and the preset number of columns of the second grid.

[0039] It can be seen from the above description that the fusion zone width is made consistent with the width of the second grid.

[0040] Further, the two triangles corresponding to each second grid are determined according to the grid points of each second grid in each first grid, and each triangle is associated with the material pixels located in the area of ​​each triangle, specifically:

[0041] Numbering the grid points of each second grid in each first grid respectively, wherein the number is unique, and associating the coordinates of the grid points of each second grid with its number;

[0042] Determine the three vertices of the two triangles corresponding to each second grid, and associate each triangle with the numbers of its three vertices;

[0043] Determine the region of each triangle according to the coordinates of the three vertices of each triangle and the grid sides and diagonals of each second grid, and determine the material pixels located within the region of each triangle according to the region of each triangle;

[0044] Each triangle is associated with the material pixels located within the area of ​​each triangle.

[0045] From the above description, it can be seen that the indexing of the triangle area is realized through two association relationships, and the mapping relationship between the material and the corresponding triangle is established, which can improve the performance of the fusion server.

[0046] Furthermore, after mapping the material pixels of each material layer image in the decodable material image to each first grid in order from left to right and from top to bottom according to the size of the first grid and the preset fusion band width, the method further includes:

[0047] When a mask instruction is monitored, mask processing is performed on the material pixels in the canvas according to the mask instruction.

[0048] Further, the mask instruction includes a point debugging mask instruction and a picture debugging mask instruction;

[0049] When a mask instruction is monitored, mask processing is performed on the material pixels in the canvas according to the mask instruction, specifically:

[0050] When a point debugging mask instruction is monitored, the point debugging mask instruction includes a mask positioning point adding instruction and a mask positioning point moving instruction, a mask positioning point is set on the canvas according to the mask positioning point adding instruction, and the corresponding mask positioning point is moved according to the mask positioning point moving instruction;

[0051] Determine a mask area according to the mask positioning points before and after the movement, and perform mask processing on the material pixels in the canvas according to the mask area;

[0052] When the image debugging mask instruction is monitored, the material pixels in the canvas are masked according to the preset mask image.

[0053] It can be seen from the above description that the masking function can be realized.

[0054] Furthermore, after mapping the material pixels of each material layer image in the decodable material image to each first grid in order from left to right and from top to bottom according to the size of the first grid and the preset fusion band width, the method further includes:

[0055] If a fusion zone exists, edge fusion processing is performed on the same pixel columns in two adjacent first grids.

[0056] Furthermore, the edge fusion processing is performed on the same pixel columns in two adjacent first grids, specifically:

[0057] According to the first mapping formula and the second mapping formula, the texture coordinates of the same pixel columns in two adjacent first grids are respectively mapped to the interval of 0-1, and the first mapping formula is x=1.0-(x l -start l ) / (end l -start l ), the second mapping formula is x=(x r -start r ) / (end r -start r );

[0058] Among them, x represents the texture coordinate after pixel column mapping, x l Represents the texture coordinates of the pixel column in the first grid on the left of the two adjacent first grids, start l and end l represent the starting texture coordinate and the ending texture coordinate of the same pixel column in the first grid on the left, respectively, r Represents the texture coordinates of the pixel column in the first grid on the right of the two adjacent first grids, start r and end r Respectively represent the starting texture coordinates and the ending texture coordinates of the same pixel column in the first grid on the right;

[0059] According to the brightness calculation formula, the brightness values ​​corresponding to the same pixel columns are calculated respectively. The brightness calculation formula is:

[0060] outValue(x)=pow(afactor×pow(2.0×x, pfactor), gamma), 0 <x<0.5;

[0061] outValue(x)=pow(1.0-(1.0-afactor)×pow(2.0×(1.0-x), pfactor), gamma), 0.5≤x<1;

[0062] Among them, outValue() represents the brightness calculation function, pow() represents the power function, afactor, pfactor and gamma are the preset correction values;

[0063] According to the corresponding brightness values, the brightness values ​​of the same pixel columns are adjusted respectively.

[0064] It can be seen from the above description that by adjusting the brightness of the same pixel column, a seamless connection effect can be achieved after fusion.

[0065] Furthermore, before the fusion server obtains the decodable material image, the process further includes:

[0066] Acquire a material image to be displayed, wherein the material image to be displayed is formed by horizontally splicing original material images corresponding to each curtain;

[0067] Calculating the number of material layers according to the width of the material image to be displayed and the preset maximum decoding resolution width of the server;

[0068] Calculating a decodable material width according to the width of the material image to be displayed and the number of material layers;

[0069] According to the decodable material width, the material image to be displayed is segmented to obtain at least one layer of material layer images, and the at least one layer of material layer images are stacked in sequence to obtain a decodable material image;

[0070] The decodable material image is saved to the cloud or a mobile storage medium.

[0071] It can be seen from the above description that the high-definition material images to be displayed are converted into images that can be decodable by the server through segmentation and stacking, which facilitates the fusion server to process the images.

[0072] Furthermore, the first grid row number and the first grid column number are calculated according to the preset server maximum decoding resolution width and screen resolution width and the number of screens, specifically:

[0073] Calculate the number of grid rows according to the preset maximum server decoding resolution width and screen resolution width;

[0074] Calculate the first grid row number according to the number of screens and the number of grid single rows;

[0075] If the number of screens is less than the number of cells in a single grid row, the number of columns of the first grid is set to be the number of screens; otherwise, the number of columns of the first grid is set to be the number of cells in a single grid row.

[0076] Furthermore, the creating a canvas according to the first number of grid rows, the first number of grid columns, the screen resolution height, and the screen resolution width is specifically:

[0077] Calculate the canvas height according to the first grid row number and the screen resolution height, and calculate the canvas width according to the first grid column number and the screen resolution width;

[0078] Create a canvas according to the canvas width and canvas height.

[0079] Further, according to the size of the first grid, the preset fusion band width and the number of display screens corresponding to each curtain, the material pixels of each material layer image in the decodable material image are mapped to each first grid in order from left to right and from top to bottom, specifically:

[0080] Numbering the pixel columns of each material layer image in the decodable material image in order from left to right and from top to bottom;

[0081] Determining the starting pixel columns corresponding to the first grids in sequence according to the width of the first grid, the preset fusion band width, the number of display screens corresponding to the curtains, and the numbers of the pixel columns;

[0082] According to the size of the first grids and the starting pixel columns corresponding to the first grids, material pixels corresponding to the first grids are respectively intercepted from the decodable material image and mapped to the first grids.

[0083] It can be seen from the above description that by determining the starting pixel column of each first grid, the material content corresponding to each first grid can be conveniently determined.

[0084] The present invention also provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the method described above is implemented.

[0085] Embodiment 1

[0086] Please refer to Figure 2-11 , Embodiment 1 of the present invention is: a large-screen fusion method, which can be applied to entertainment venues and exhibitions.

[0087] like Figure 2 As shown, the following steps are included:

[0088] S1: Convert the material image to be displayed into a decodable material image.

[0089] Since the maximum resolution width that the fusion server can decode is limited, if the width of the material image to be displayed is large, it may not be decoded and processed by the fusion server. Therefore, the material image to be displayed needs to be converted into an image decodable by the fusion server.

[0090] Specifically, first, the material image to be displayed is obtained, and the material image to be displayed is formed by horizontally splicing the original material images corresponding to each screen, wherein one screen is a large screen spliced ​​together by multiple display screens, and the original material image corresponding to the screen is used to be displayed on the multiple display screens of the screen. Therefore, the width of the original material image corresponding to the screen = the number of display screens corresponding to the screen × the screen resolution width.

[0091] Then, according to the width L of the material image to be displayed and the preset server maximum decoding resolution width MaxCodeWidth, the material layer number Floor is calculated, that is, Floor = Ceiling (L / MaxCodeWidth), Ceiling is a rounding function. According to the width L of the material image to be displayed and the material layer number Floor, the decodable material width W is calculated, that is, W = L / Floor.

[0092] Next, the material image to be displayed is segmented according to the decodable material width to obtain at least one layer of material layer images, that is, the width of each layer of material layer images is the decodable material width W, and at least one layer of material layer images is stacked in sequence to obtain a decodable material image.

[0093] Finally, the decodable material image is saved to the cloud or a mobile storage medium (such as a USB flash drive).

[0094] S2: The fusion server obtains decodable material images and configuration information, and determines the number of screens according to the configuration information.

[0095] Specifically, after the fusion server is started, it downloads decodable material images from the cloud or loads decodable material images from a mobile storage medium, and obtains configuration information from the cloud in real time, wherein the configuration information includes the number of screens and the number of display screens corresponding to each screen, and calculates the number of screens based on the number of screens and the number of display screens corresponding to each screen.

[0096] For example, assuming that the number of screens is 2, that is, the materials to be displayed on the two screens are processed simultaneously, the first screen includes 4 display screens, and the second screen includes 3 display screens, then the number of screens is 7.

[0097] S3: Calculate the number of first grid rows and the number of first grid columns according to the preset maximum decoding resolution width of the server and the screen resolution width and the number of screens.

[0098] Specifically, according to the preset maximum decoding resolution width MaxCodeWidth of the server and the screen resolution width ScreenWidth, the number of single-row grid cells X is calculated, that is, X=MaxCodeWidth / ScreenWidth.

[0099] According to the number of screens M and the number of grid cells in a single row X, the first number of grid rows R is calculated, that is, R=Ceiling(M / X), where Ceiling represents a rounding-up function.

[0100] If the number of screens M is less than the number of grid rows X, then the number of first grid columns C=M; otherwise, the number of first grid columns C=X.

[0101] For example, assuming that the decoding limit of the fusion server is 7680×4320, that is, the server maximum decoding resolution width MaxCodeWidth=7680; the screen resolution width ScreenWidth=1920, the screen resolution height ScreenHeight=1080, the number of screens M=7, then the number of grid rows X=7680 / 1920=4, the first grid row number R=Ceiling(7 / 4)=2, because the number of screens M is greater than the number of grid rows X, the first grid column number R=X=4.

[0102] S4: creating a canvas according to the first number of grid rows, the first number of grid columns, the screen resolution height, and the screen resolution width, and dividing the canvas into grids according to the first number of grid rows and the first number of grid columns to obtain a first grid.

[0103] Specifically, the height of the canvas = the number of rows of the first grid × the height of the screen resolution, and the width of the canvas = the number of columns of the first grid × the width of the screen resolution. After calculating the width and height of the canvas, a canvas of the corresponding size can be created; then, the first grid is divided in the canvas according to the number of rows and columns of the first grid. In other words, the width and height of the first grid are consistent with the width and height of the screen resolution, and each first grid corresponds to each display screen in each screen.

[0104] For example, the number of first grid rows R=2, the number of first grid columns R=4, the screen resolution width ScreenWidth=1920, and the screen resolution height ScreenHeight=1080, then the canvas size is 7680×2160; a large grid of 2 rows and 4 columns is divided in the canvas, and the size of each large grid is consistent with the screen size.

[0105] S5: Mapping the material pixels of each material layer image in the decodable material image to each first grid in order from left to right and from top to bottom according to the size of the first grid, the preset fusion band width and the number of display screens corresponding to each curtain.

[0106] Specifically, first, the pixel columns of each material layer image in the decodable material image are numbered in sequence from left to right and from top to bottom; then, the starting pixel columns corresponding to each first grid are determined in sequence according to the width of the first grid, the preset fusion band width, the number of display screens corresponding to each curtain, and the numbers of the pixel columns; finally, according to the size of the first grid and the starting pixel columns corresponding to each first grid, the material pixels corresponding to each first grid are respectively intercepted from the decodable material image and mapped to each first grid.

[0107] Among them, for the starting pixel column of the first grid, first determine which screen of which screen the first grid corresponds to according to the above configuration information, that is, the number of display screens corresponding to each screen, and then determine the starting pixel column corresponding to the first grid according to the starting pixel column calculation formula, and the starting pixel column calculation formula is:

[0108]

[0109] Among them, X j represents the number of the starting pixel column corresponding to the jth first grid, j = 1, 2, ..., M; a and b represent the screen number corresponding to the jth first grid and the display screen number in the screen, that is, the jth first grid corresponds to the bth display screen of the ath screen; M iis the number of display screens corresponding to the i-th screen, i=1,2,…,m, where m is the number of screens; W1 is the width of the first grid. From the above steps, we can see that W1=ScreenWidth; Wc is the width of the fusion zone. When there is no fusion zone, Wc=0.

[0110] It can be seen from the above formula that if a first grid corresponds to the first display screen of the i-th screen, then the starting offset position of the starting pixel column corresponding to the first grid is the total length of the materials corresponding to the first i-1 screens, thereby avoiding the situation where the display screen of the latter screen displays the materials of the previous screen when there is a fusion band, that is, avoiding display confusion between different screens.

[0111] For example, assuming that the width and height of the decodable material image are 6720×2160, the number of material layers is 2, and the height of each material layer image is 1080, then the pixel columns in the first material layer image are numbered 1-6720 from left to right, and the pixel columns in the second material layer image are numbered 6721-13440 from left to right.

[0112] Assuming that the number of screens is m=2, the number of display screens corresponding to the first screen is M1=4, and the number of display screens corresponding to the second screen is M2=3, then the number of screens is M=7, and the first grid corresponds to the first display screen of the first screen, that is, when j=1, a=1, b=1; similarly, when j=2, a=1, b=2; when j=3, a=1, b=3; when j=4, a=1, b=4; when j=5, a=2, b=1; when j=6, a=2, b=2; when j=7, a=2, b=3.

[0113] Assuming that the first grid width W1=1920, when there is no fusion zone, the starting pixel columns corresponding to the 7 first grids are numbered 1, 1921, 3841, 5761, 7681, 9601, and 11521 respectively; when there is a fusion zone, the starting pixel columns corresponding to the first four first grids are numbered 1, 1921-Wc, 3841-2Wc, and 5761-3Wc respectively, and the starting pixel columns corresponding to the last three first grids are numbered 7681, 9601-Wc, and 11521-2Wc respectively.

[0114] After determining the number of the starting pixel column corresponding to each first grid, according to the size of the first grid, in each layer of the decodable material image, the material pixels corresponding to each first grid are sequentially intercepted from left to right and from top to bottom, and mapped to each first grid.

[0115] Although the canvas is divided into 8 first grids, since the number of screens is 7, only 7 first grids have mapped material images, and the last first grid has no mapped material image, such as Figure 3 shown.

[0116] S6: When a correction instruction is monitored, distortion correction processing is performed on the material pixels in the canvas according to the correction instruction.

[0117] The correction instructions include row and column addition instructions and movement instructions. This step includes the following steps:

[0118] S601: When an add row and column instruction is monitored, add rows and columns to each first grid according to the second grid row number and second grid column number and the added row line type and added column line type preset in the add row and column instruction to obtain a second grid.

[0119] The line type of adding rows and columns can be a straight line or a curve, and the curve includes a power function curve and a Bezier curve. For example, when the number of rows and columns of the second grid is 4, the line type of adding rows is a power function curve, and the line type of adding columns is a straight line. Figure 4 As shown ( Figure 4 Only the first grid after adding rows and columns is shown). In practical applications, for relatively flat planes, straight lines can be selected, and for curved ones, power functions or Bezier curves can be selected, thereby improving the debugging efficiency of subsequent distortion correction.

[0120] In this embodiment, the number of second grid rows Rs=2, the number of second grid columns Cs=4, and the line types of added rows and added columns are both straight lines. Figure 5 As shown ( Figure 5 Only the first grid after adding rows and columns is shown).

[0121] S602: Determine two triangles corresponding to each second grid according to the grid points of each second grid in each first grid, and associate each triangle with material pixels located in the area of ​​each triangle.

[0122] like Figure 5 As shown, when the number of second grid rows Rs=2 and the number of second grid columns Cs=4, each first grid contains 8 second grids, and each second grid can be considered to be composed of two triangles, so each first grid contains 16 triangles. If the GPU stores the coordinates of the three vertices of each triangle respectively, and each coordinate point contains three dimensions (x, y, z), 16×3×3=144 float type data are required. In this embodiment, two association relationships are constructed to store each triangle area, namely, the association relationship between the coordinates of the grid points of each second grid and their numbers and the association relationship between the triangle and the numbers of its three vertices, thereby saving the storage resources of the GPU and improving the performance of the fusion server.

[0123] Specifically, first, the grid points of each second grid in each first grid are numbered respectively, the number is unique, and the coordinates of the grid points of each second grid are associated with its number. For example, assuming that the number of second grid rows Rs=2, the number of second grid columns Cs=4, then each first grid is divided into 8 second grids, and the grid points of the 8 second grids are numbered in sequence from left to right and from top to bottom, such as Figure 6 As shown, the numbers are 1 to 15. After the numbers are determined, the coordinates of the grid points of each second grid are associated with their numbers to obtain an association relationship between the numbers and the coordinates.

[0124] Then, the three vertices of the two triangles corresponding to each second grid are determined respectively, and the numbers of the three vertices of each triangle are associated with each triangle. Figure 6 The direction of the arrow in the middle can form the grid point index {1, 6, 2, 7, 3, 8, 4, 9, 5, 10, 10, 6, 6, 11, 7, 12, 8, 13, 9, 14, 10, 15}, and the three adjacent grid points in the index are taken as the three vertices of the trilateral. Among them, if the first grid point of the three adjacent grid points is an even number in the index, then the order of the first two grid points of the three adjacent grid points is swapped. For example, if the second group of three adjacent grid points is {6, 2, 7}, it becomes {2, 6, 7}. By analogy, the relationship between the obtained trilateral and its three vertex numbers is as follows:

[0125] Triangle 1: {1,6,2}; Triangle 2: {2,6,7}; Triangle 3: {2,7,3}; Triangle 4: {3,7,8}; Triangle 5: {3,8,4}; Triangle 6: {4,8,9}; Triangle 7: {4,9,5}; Triangle 8: {5,9,10}; Triangle 9: {5,10,10}; Triangle 10: {10,10,6}; Triangle 11: {10, Triangle 12: {6,6,11}; Triangle 13: {6,11,7}; Triangle 14: {7,11,12}; Triangle 15: {7,12,8}; Triangle 16: {8,12,13}; Triangle 17: {8,13,9}; Triangle 18: {9,13,14}; Triangle 19: {9,14,10}; Triangle 20: {10,14,15}.

[0126] Among them, the triangles with repeated vertices are judged as invalid triangles, so triangles 9-12 are all invalid triangles, and the remaining 16 triangles and the associated relationship of the numbers of their three vertices can be obtained.

[0127] Next, the region range of each triangle is determined according to the coordinates of the three vertices of each triangle and the grid edges and diagonals of each second grid, and the material pixels located in the region of each triangle are determined according to the region range of each triangle.

[0128] Finally, each triangle is associated with the material pixels located in the area of ​​each triangle.

[0129] S603: When a correction movement instruction is monitored, the vertices or edges of the corresponding triangle are moved according to the movement instruction, and distortion correction processing is performed on the material pixels corresponding to each triangle containing the moved vertices or edges in real time according to the positions of the vertices or edges of the triangle before and after the movement.

[0130] For example, Figure 7 As shown, when the grid point numbered 8 is moved, the material pixels corresponding to the six triangles around it are all subjected to corresponding distortion correction.

[0131] Furthermore, in actual applications, users can remotely implement geometric correction and masking through a web page (PC or mobile phone). For irregular parts, you can select a vertex, an edge or several vertices to move to achieve irregular correction; by independently controlling the displacement of each point, it is convenient to fine-tune the geometric correction effect. The debugged data can be saved and uploaded to the cloud. If the machine is damaged later, the configuration data can be loaded from the cloud without the need for re-construction.

[0132] S7: When a mask instruction is monitored, mask processing is performed on the material pixels in the canvas according to the mask instruction, wherein the mask instruction includes a point debugging mask instruction and a picture debugging mask instruction.

[0133] Specifically, when a point debugging mask instruction is monitored, including a mask anchor point addition instruction and a mask anchor point movement instruction, a mask anchor point is set on the canvas according to the mask anchor point addition instruction (which can be generated according to the mouse drag operation), and the corresponding mask anchor point is moved according to the mask anchor point movement instruction; then, the mask area is determined according to the mask anchor points before and after the movement, and the material pixels in the canvas are masked according to the mask area. For example, Figure 8 As shown, Figure 8 The black area in is the mask area.

[0134] When the image debugging mask command is heard, the pixels of the material in the canvas are masked according to the preset mask image. Fig. 9 As shown, Fig. 9 The left picture is the mask image, and the right picture is the mask effect image. In actual applications, the mask image can be uploaded through the debugging web page.

[0135] Preset images and mouse dragging greatly facilitate the debugging of the equipment and save customers' time.

[0136] S8: If a fusion zone exists, edge fusion processing is performed on the same pixel columns in two adjacent first grids.

[0137] It can be seen from step S5 that, when the blending band is turned on, by controlling the starting pixel column of each first grid, two adjacent first grids can have a common pixel column.

[0138] Further, in an optional embodiment, when a fusion band exists, a preset fusion band width is calculated based on the width of the first grid and the preset number of second grid columns, that is, the number of second grid columns is set in advance, and then the first grid width is divided by the second grid column number to obtain the second grid width, and this value is used as the fusion band width. At this time, for two adjacent first grids, the last column of the second grid of the first grid on the left and the first column of the second grid of the first grid on the right contain the same pixel columns, that is, the material pixels therein are the same.

[0139] This step specifically includes the following steps:

[0140] S801: Mapping texture coordinates of the same pixel columns in two adjacent first grids to a range of 0-1.0 according to a first mapping formula and a second mapping formula;

[0141] The first mapping formula: x = 1.0-(xl-startl) / (endl-startl),

[0142] Second mapping formula: x=(xr-startr) / (endr-startr);

[0143] Among them, x represents the texture coordinates after the pixel column is mapped, xl represents the texture coordinates of the pixel column in the first grid on the left of the two adjacent first grids, startl and endl respectively represent the starting texture coordinates and the ending texture coordinates of the same pixel column in the first grid on the left, xr represents the texture coordinates of the pixel column in the first grid on the right of the two adjacent first grids, startr and endr respectively represent the starting texture coordinates and the ending texture coordinates of the same pixel column in the first grid on the right.

[0144] S802: Calculate the brightness values ​​corresponding to the same pixel columns according to a brightness calculation formula, where the brightness calculation formula is:

[0145] outValue(x)=pow(afactor×pow(2.0×x, pfactor), gamma), 0 <x<0.5;

[0146] outValue(x)=pow(1.0-(1.0-afactor)×pow(2.0×(1.0-x), pfactor), gamma), 0.5≤x<1;

[0147] Among them, outValue() represents a brightness calculation function, pow() represents a power function, afactor, pfactor and gamma are preset correction values; in this embodiment, gamma=2.2, afactor=0.5, pfactor=2.0.

[0148] S803: According to the corresponding brightness values, respectively adjust the brightness values ​​of the same pixel columns.

[0149] This step adjusts the brightness of the same pixel columns in two adjacent first grids to achieve brightness hiding, so that the brightness of the fusion zone area is consistent with that of the non-fusion zone area, such as Fig.10 As shown, the final fusion can produce a seamless connection effect.

[0150] S9: Projecting the material pixels in each first grid onto each display screen of each screen in the configuration information respectively.

[0151] Different curtains can correspond to different merchants or different boxes, for example Fig.11 As shown, the three first grids on the upper part of the canvas correspond to the curtain of merchant one (including three display screens), and the two first grids on the lower part of the canvas correspond to the curtain of merchant two (including two display screens), thus realizing multiple controls of one machine.

[0152] The system is based on the Linux bottom layer. Under the Linux system hardware tree, all USB hardware trees are fixed and arranged from small to large according to the hardware tree index. Assuming that the number of screens M = 7, the embedded fusion hardware system has 9 external screen ports, each with a USB serial port. The system allocates the following hardware numbers to the 9 ports:

[0153] Port 1: " / sys / bus / usb / devices / 2-1.1:1.0",

[0154] Port 2: " / sys / bus / usb / devices / 2-1.2:1.0",

[0155] Port 3: " / sys / bus / usb / devices / 7-1.1:1.0",

[0156] 4 ports: " / sys / bus / usb / devices / 7-1.2:1.0",

[0157] Port 5: " / sys / bus / usb / devices / 7-1.3:1.0",

[0158] Port 6: " / sys / bus / usb / devices / 7-1.4.1:1.0",

[0159] Port 7: " / sys / bus / usb / devices / 7-1.4.2:1.0",

[0160] 8 ports: " / sys / bus / usb / devices / 7-1.4.3:1.0",

[0161] Port 9: " / sys / bus / usb / devices / 7-1.4.4:1.0".

[0162] Since M=7, any 7 of the 9 ports can be used. Assuming that ports 1-7 are used, if port 6 is damaged later, the port 6 can be transferred to port 8, which can be used. The system automatically imports the content into ports 1, 2, 3, 4, 5, 7, and 8 according to the size index based on the hardware tree and maps them to screens 1 to 7.

[0163] Compared with software master-slave machines, hardware cascading is faster and provides a better experience. Based on this technology, when a slot is damaged, the output port can be introduced to an unused output port without replacing or repairing the device, which greatly facilitates customers.

[0164] This embodiment integrates large-screen integration functions such as material display, geometric correction, mask processing, and splicing fusion into one embedded device, offsetting the restrictions on projector models and having cost advantages; hardware cascading and USB slots facilitate expansion and equipment maintenance; and shared equipment enables multiple merchants and multiple private rooms to share equipment and operate independently, saving costs.

[0165] Embodiment 2

[0166] This embodiment is a computer-readable storage medium corresponding to the above embodiment, on which a computer program is stored. When the program is executed by the processor, the various steps of the large-screen fusion method in the above embodiment are implemented, and the same technical effect can be achieved, which will not be repeated here.

[0167] In summary, the large-screen fusion method and computer-readable storage medium provided by the present invention can concentrate the functions of large-screen fusion such as material display, geometric correction, mask processing, splicing and fusion on an embedded device, offset the restrictions on projector models, and have cost advantages; through the configuration information, the number of shared screens and the number of spliced ​​screens of each screen can be dynamically identified, the materials to be displayed on multiple screens can be processed at the same time, and the large-screen fusion function of multiple screens can be realized at the same time.

[0168] The above descriptions are merely embodiments of the present invention and are not intended to limit the patent scope of the present invention. Any equivalent transformations made using the contents of the present invention's specification and drawings, or directly or indirectly applied in related technical fields, are also included in the patent protection scope of the present invention.

Claims

1. A large screen fusion method, characterized in that: include: The fusion server obtains a decodable material image, wherein the decodable material image is formed by stacking at least one layer of material layer images, and the at least one layer of material layer images is obtained by segmenting the material image to be displayed; The fusion server acquires configuration information in real time, the configuration information including the number of screens and the number of display screens corresponding to each screen, and calculates the number of screens according to the number of screens and the number of display screens corresponding to each screen; Calculate the number of first grid rows and the number of first grid columns according to the preset maximum decoding resolution width of the server and the screen resolution width and the number of screens; Creating a canvas according to the first number of grid rows, the first number of grid columns, the screen resolution height, and the screen resolution width, and dividing the canvas into grids according to the first number of grid rows and the first number of grid columns to obtain a first grid; Mapping the material pixels of each material layer image in the decodable material image to each first grid in sequence from left to right and from top to bottom according to the size of the first grid, the preset fusion band width, and the number of display screens corresponding to each curtain; The material pixels in each first grid are projected onto each display screen of each screen in the configuration information respectively.

2. The large-screen fusion method according to claim 1, characterized in that: After mapping the material pixels of each material layer image in the decodable material image to each first grid in order from left to right and from top to bottom according to the size of the first grid and the preset fusion band width, the method further includes: When an instruction to add rows and columns is monitored, rows and columns are added to each first grid respectively according to the second grid row number and second grid column number and the added row line type and added column line type preset in the instruction to add rows and columns, so as to obtain a second grid; Determine two triangles corresponding to each second grid according to the grid points of each second grid in each first grid, and associate each triangle with the material pixels located in the area of ​​each triangle; When a correction movement instruction is monitored, the vertices or edges of the corresponding triangle are moved according to the movement instruction, and distortion correction processing is performed on the material pixels corresponding to each triangle containing the moved vertices or edges in real time according to the positions of the vertices or edges of the triangle before and after the movement.

3. The large-screen fusion method according to claim 2, characterized in that: The preset fusion band width is calculated according to the width of the first grid and the preset number of columns of the second grid.

4. The large-screen fusion method according to claim 2, characterized in that: The method of determining two triangles corresponding to each second grid according to the grid points of each second grid in each first grid, and associating each triangle with the material pixels located in the area of ​​each triangle, is specifically as follows: Numbering the grid points of each second grid in each first grid respectively, wherein the number is unique, and associating the coordinates of the grid points of each second grid with its number; Determine the three vertices of the two triangles corresponding to each second grid, and associate each triangle with the numbers of its three vertices; Determine the region of each triangle according to the coordinates of the three vertices of each triangle and the grid sides and diagonals of each second grid, and determine the material pixels located within the region of each triangle according to the region of each triangle; Each triangle is associated with the material pixels located within the area of ​​each triangle.

5. The large-screen fusion method according to claim 1, characterized in that: After mapping the material pixels of each material layer image in the decodable material image to each first grid in order from left to right and from top to bottom according to the size of the first grid and the preset fusion band width, the method further includes: When a mask instruction is monitored, mask processing is performed on the material pixels in the canvas according to the mask instruction.

6. The large-screen fusion method according to claim 5, characterized in that: The mask instructions include point debugging mask instructions and picture debugging mask instructions; When a mask instruction is monitored, mask processing is performed on the material pixels in the canvas according to the mask instruction, specifically: When a point debugging mask instruction is monitored, the point debugging mask instruction includes a mask positioning point adding instruction and a mask positioning point moving instruction, a mask positioning point is set on the canvas according to the mask positioning point adding instruction, and the corresponding mask positioning point is moved according to the mask positioning point moving instruction; Determine a mask area according to the mask positioning points before and after the movement, and perform mask processing on the material pixels in the canvas according to the mask area; When the image debugging mask instruction is monitored, the material pixels in the canvas are masked according to the preset mask image.

7. The large-screen fusion method according to claim 1, characterized in that: After mapping the material pixels of each material layer image in the decodable material image to each first grid in order from left to right and from top to bottom according to the size of the first grid and the preset fusion band width, the method further includes: If a fusion zone exists, edge fusion processing is performed on the same pixel columns in two adjacent first grids.

8. The large-screen fusion method according to claim 7, characterized in that: The edge fusion processing is performed on the same pixel columns in two adjacent first grids, specifically: According to the first mapping formula and the second mapping formula, the texture coordinates of the same pixel columns in two adjacent first grids are respectively mapped to the interval of 0-1, and the first mapping formula is x=1.0-(x l -start l ) / (end l -start l ), the second mapping formula is x=(x r -start r ) / (end r -start r ); Among them, x represents the texture coordinate after pixel column mapping, x l Represents the texture coordinates of the pixel column in the first grid on the left of the two adjacent first grids, start l and end l represent the starting texture coordinate and the ending texture coordinate of the same pixel column in the first grid on the left, respectively, r Represents the texture coordinates of the pixel column in the first grid on the right of the two adjacent first grids, start r and end r Respectively represent the starting texture coordinates and the ending texture coordinates of the same pixel column in the first grid on the right; According to the brightness calculation formula, the brightness values ​​corresponding to the same pixel columns are calculated respectively. The brightness calculation formula is: outValue(x)=pow(afactor×pow(2.0×x, pfactor), gamma), 0 <x<0.5; outValue(x)=pow(1.0-(1.0-afactor)×pow(2.0×(1.0-x), pfactor), gamma), 0.5≤x<1; Among them, outValue() represents the brightness calculation function, pow() represents the power function, afactor, pfactor and gamma are the preset correction values; According to the corresponding brightness values, the brightness values ​​of the same pixel columns are adjusted respectively.

9. The large-screen fusion method according to claim 1, characterized in that: Before the fusion server obtains the decodable material image, the method further includes: Acquire a material image to be displayed, wherein the material image to be displayed is formed by horizontally splicing original material images corresponding to each curtain; Calculating the number of material layers according to the width of the material image to be displayed and the preset maximum decoding resolution width of the server; Calculating a decodable material width according to the width of the material image to be displayed and the number of material layers; According to the decodable material width, the material image to be displayed is segmented to obtain at least one layer of material layer images, and the at least one layer of material layer images are stacked in sequence to obtain a decodable material image; The decodable material image is saved to the cloud or a mobile storage medium.

10. The large-screen fusion method according to claim 1, characterized in that: The first grid row number and the first grid column number are calculated according to the preset server maximum decoding resolution width and screen resolution width and the number of screens, specifically: Calculate the number of grid rows according to the preset maximum server decoding resolution width and screen resolution width; Calculate the first grid row number according to the number of screens and the number of grid single rows; If the number of screens is less than the number of cells in a single grid row, the number of columns of the first grid is set to be the number of screens; otherwise, the number of columns of the first grid is set to be the number of cells in a single grid row.

11. The large-screen fusion method according to claim 1, characterized in that: The step of creating a canvas according to the first number of grid rows, the first number of grid columns, the screen resolution height, and the screen resolution width is specifically as follows: Calculate the canvas height according to the first grid row number and the screen resolution height, and calculate the canvas width according to the first grid column number and the screen resolution width; Create a canvas according to the canvas width and canvas height.

12. The large-screen fusion method according to claim 1, characterized in that: According to the size of the first grid, the preset fusion band width and the number of display screens corresponding to each curtain, the material pixels of each material layer image in the decodable material image are mapped to each first grid in order from left to right and from top to bottom, specifically: Numbering the pixel columns of each material layer image in the decodable material image in order from left to right and from top to bottom; Determining the starting pixel columns corresponding to the first grids in sequence according to the width of the first grid, the preset fusion band width, the number of display screens corresponding to the curtains, and the numbers of the pixel columns; According to the size of the first grids and the starting pixel columns corresponding to the first grids, material pixels corresponding to the first grids are respectively intercepted from the decodable material image and mapped to the first grids.

13. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 1 to 12 is implemented.

Citation Information

Patent Citations

  • GPU (graphics processing unit) acceleration based video display method adopting multi-projector splicing fusion on special-shaped screens

    CN104954715A

  • Tiled fusion windowing method based on distributed cloud splicing and display screen

    CN111010600A

  • Multi-projection image display method and device, electronic device and storage medium

    CN111698491A

  • Projection system, image processing apparatus, projection method

    US20180324396A1

Cited By

  • Image display method, system and equipment based on multi-layer transparent display screen and medium

    CN120765478A