A window picture cutting method and device, a panel control device and a storage medium

By drawing a window area in the target chart of the splicing control device, determining the number of cutting blocks and selecting the optimal cutting method, the problem of difficulty in judging the number of cutting blocks in the window screen in the prior art is solved, and the cutting efficiency and equipment processing capacity are improved.

CN122309427APending Publication Date: 2026-06-30ZHEJIANG UNIVIEW TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
ZHEJIANG UNIVIEW TECH CO LTD
Filing Date
2024-12-27
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

Existing splicing control equipment cannot quickly and effectively determine the number of cutting blocks when the window screen is overlaid, resulting in a large amount of calculation and low efficiency of random cutting method, especially prone to timeout in the case of multiple output ports.

Method used

By drawing the window area in the pre-constructed target chart, the number of cut blocks in the vertical and horizontal directions of the window screen is determined, and the optimal cutting method is selected for cutting, including cutting vertically first and then horizontally or cutting horizontally first and then vertically.

Benefits of technology

It enables quick and effective determination of the number of cutting blocks and selection of the optimal cutting method, improving the efficiency of window screen cutting, especially significantly improving the processing efficiency of splicing control equipment under complex layered layouts.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122309427A_ABST
    Figure CN122309427A_ABST
Patent Text Reader

Abstract

This invention discloses a window display segmentation method, apparatus, splicing control device, and storage medium. The method involves drawing the current window display and the corresponding window regions of the upper-level window display in a target graph; determining the number of columns containing the window start and / or end points in the vertical direction, the number of rows containing the window start and / or end points in the horizontal direction, and the number of windows containing the window region within the window region corresponding to the current window display; determining the number of first effective segments based on the number of columns and windows when segmenting the current window display using a first segmentation method; determining the number of second effective segments based on the number of rows and windows when segmenting the current window display using a second segmentation method; determining the target segmentation method based on the number of first and second effective segments, and segmenting the current window display based on the target segmentation method. This solution can segment the window display using the optimal segmentation method.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of image processing technology, and in particular to a method, apparatus, splicing control device, and storage medium for window image cutting. Background Technology

[0002] Current video wall control equipment (i.e., splicing control equipment) primarily uses PCIe as the physical transmission medium from the input board to the output board because PCIe offers stable performance and strong scalability. However, PCIe transmission bandwidth has certain limitations. If the window images transmitted from the input board to the output board are layered, the covered image area will waste transmission bandwidth. Therefore, an infinite layering and cutting method is generally used to cut the bottom layer image image before transmission. The traditional cutting method is to first cut vertically and then horizontally, thus avoiding the transmission of the covered image area and saving a lot of bandwidth. For example, Figure 1a This is a schematic diagram illustrating the effect of two overlapping window images provided in related technologies. Figure 1b This is a schematic diagram of a cutting method provided in related technologies, which uses infinite layer cutting to first vertically cut the bottom window image and then horizontally cut it.

[0003] However, current infinite stacking cutting algorithms cannot quickly and effectively determine the number of cut blocks, thus failing to determine which aspect of the window screen should be cut first for maximum efficiency. Furthermore, they rely on the X and Y coordinates of two windows to determine if they intersect, specifically the X and Y coordinates between the bottom left, top left, top right, and bottom right corners of each window. This calculation is complex and computationally intensive. Due to the high computational cost, window screen cutting can only be performed randomly based on one cutting method, failing to effectively reduce the number of cut blocks. Additionally, as the business scope of video wall control equipment expands to 64 windows per single output port, the computational load of the infinite stacking cutting algorithm becomes too large, sometimes resulting in timeouts. Summary of the Invention

[0004] This invention provides a method, apparatus, splicing control device, and storage medium for cutting window images, which can quickly and effectively determine the number of cutting blocks corresponding to different cutting methods, thereby selecting the optimal cutting method to cut the window image.

[0005] According to one aspect of the present invention, a method for cutting a window image is provided, characterized in that it includes:

[0006] In response to the window screen cutting event being triggered, the corresponding window area is drawn in the pre-constructed target chart according to the position information of the current window screen and the position information of the upper layer window screen of the current window screen respectively;

[0007] Determine the number of columns containing the window start and / or window end in the vertical direction, the number of rows containing the window start and / or window end in the horizontal direction, and the number of windows containing the window area in the window region corresponding to the current window screen;

[0008] The number of effective first cut blocks is determined based on the number of columns and the number of windows when the current window image is cut according to the first cutting method; wherein, the first cutting method is to cut vertically first and then cut horizontally.

[0009] The number of effective blocks for the second cut is determined based on the number of rows and the number of windows when the current window image is cut according to the second cutting method; wherein, the second cutting method is to cut horizontally first and then vertically.

[0010] Based on the number of first and second effective cutting blocks, a target cutting method is determined, and the current window image is cut based on the target cutting method; wherein, the target cutting method is one of the first cutting method and the second cutting method.

[0011] According to another aspect of the present invention, a window image cutting device is provided, comprising:

[0012] The window area drawing module is used to draw the corresponding window area in a pre-constructed target chart in response to the window screen cutting event being triggered, based on the position information of the current window screen and the position information of the upper-level window screen of the current window screen respectively.

[0013] The quantity determination module is used to determine the number of columns containing the window start point and / or window end point in the vertical direction, the number of rows containing the window start point and / or window end point in the horizontal direction, and the number of windows containing the window area in the window region corresponding to the current window screen.

[0014] The first effective block quantity determination module is used to determine the first effective block quantity when cutting the current window image according to the first cutting method based on the number of columns and the number of windows; wherein, the first cutting method is to cut vertically first and then cut horizontally.

[0015] The second effective block quantity determination module is used to determine the second effective block quantity when cutting the current window screen according to the second cutting method based on the number of rows and the number of windows; wherein, the second cutting method is to cut horizontally first and then vertically.

[0016] The window display segmentation module is used to determine a target segmentation method based on the number of first effective segmentation blocks and the number of second effective segmentation blocks, and to segment the current window display based on the target segmentation method; wherein the target segmentation method is one of the first segmentation method and the second segmentation method.

[0017] According to another aspect of the present invention, a splicing control device is provided, the splicing control device comprising:

[0018] At least one processor; and

[0019] A memory communicatively connected to the at least one processor; wherein,

[0020] The memory stores a computer program that can be executed by the at least one processor, which enables the at least one processor to perform the window screen cutting method according to any embodiment of the present invention.

[0021] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the window screen cutting method according to any embodiment of the present invention.

[0022] The window display segmentation scheme of this invention, in response to a window display segmentation event being triggered, draws a corresponding window region in a pre-constructed target chart based on the position information of the current window display and the position information of the upper-level window display of the current window display; determines the number of columns containing the window start point and / or window end point in the vertical direction, the number of rows containing the window start point and / or window end point in the horizontal direction, and the number of windows containing the window region in the window region corresponding to the current window display; determines the number of first effective segments when segmenting the current window display based on the number of columns and the number of windows; wherein the first segmentation method is vertical segmentation followed by horizontal segmentation; determines the number of second effective segments when segmenting the current window display based on the number of rows and the number of windows; wherein the second segmentation method is horizontal segmentation followed by vertical segmentation; determines a target segmentation method based on the number of first effective segments and the number of second effective segments, and segments the current window display based on the target segmentation method; wherein the target segmentation method is one of the first segmentation method and the second segmentation method. The technical solution provided by the embodiments of the present invention can quickly and effectively determine the number of cutting blocks corresponding to different cutting methods, thereby selecting the optimal cutting method to cut the window image.

[0023] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description

[0024] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0025] Figure 1a This is a schematic diagram illustrating the effect of two overlapping window images provided in related technologies;

[0026] Figure 1b This is a schematic diagram of a cutting method in related technologies, which uses infinite layer cutting to first vertically cut the bottom window image and then horizontally cut it.

[0027] Figure 2 A flowchart of a window display segmentation method provided in an embodiment of the present invention;

[0028] Figure 3 This invention provides a schematic diagram of drawing a window area in a target chart according to an embodiment of the invention.

[0029] Figure 4 This invention provides a schematic diagram illustrating a process of first vertically cutting and then horizontally cutting the current window image, as provided in an embodiment of the invention.

[0030] Figure 5 This invention provides a schematic diagram illustrating a process of first horizontally cutting and then vertically cutting the current window image, as provided in an embodiment of the invention.

[0031] Figure 6 A schematic diagram of window area distribution provided in an embodiment of the present invention;

[0032] Figure 7 This is a schematic diagram illustrating the process of adding a window screen ID to a window area drawn in a target chart, as provided in an embodiment of the present invention.

[0033] Figure 8 This is a schematic diagram of a window image cutting device provided in an embodiment of the present invention;

[0034] Figure 9 This is a schematic diagram of the structure of the splicing control device that implements the window screen cutting method of the present invention. Detailed Implementation

[0035] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0036] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0037] Figure 2 This is a flowchart illustrating a window screen cutting method provided in an embodiment of the present invention. This embodiment is applicable to situations involving window screen cutting. The method can be executed by a window screen cutting device, which can be implemented in hardware and / or software and can be configured in a video wall control device. Figure 2 As shown, the method includes:

[0038] S210. In response to the window screen cutting event being triggered, draw the corresponding window area in the pre-constructed target chart according to the position information of the current window screen and the position information of the upper layer window screen of the current window screen.

[0039] For example, when a new window image is detected being inserted into the bottom layer, it can be determined that a window image segmentation event has been triggered. At this time, the new window image is taken as the current window image, and other existing window images are taken as the upper-level window images of the current window image. The corresponding window area is then drawn in a pre-constructed target chart based on the position information of the current window image and the position information of its upper-level window images. As another example, when a user-inputted window image segmentation command is received, it can be determined that a window image segmentation event has been triggered. At this time, all window images are sorted from top to bottom. Starting from the second layer of window images, each window image is traversed from top to bottom, and the position information of the current window image and its upper-level window image are determined. The corresponding window area is then drawn in a pre-constructed target chart based on the position information of the current window image and its upper-level window images. The target chart can be a target chart constructed based on the output resolution of the splicing control device's output port; that is, the size of the target chart is the same as the output resolution of the splicing control device's output port. It should be noted that the splicing control device can contain multiple output ports, and the output resolution of each output port can be the same or different. Therefore, a corresponding target chart is constructed for each output port, that is, the target chart corresponds one-to-one with the output port. The value of each point in the target chart can be 1 or 0. The window area is the same size as the corresponding window screen.

[0040] When drawing the window area corresponding to the window view in the target chart, the corresponding window area can be identified based on the layer number of the window view (i.e., which layer). The start and end points of the window area corresponding to the upper-level window view can also be identified in the target chart. For example, if all points in the target chart have a value of 1, then the start and end points of the window area corresponding to the upper-level window view are both identified with 0 in the target chart; conversely, if all points in the target chart have a value of 0, then the start and end points of the window area corresponding to the upper-level window view are both identified with 1 in the target chart. The window area is a rectangular area, and the window start point can be the upper-left corner of the window area, and the window end point can be the lower-right corner of the window area; alternatively, the window start point can also be the lower-left corner of the window area, and the window end point can be the upper-right corner of the window area.

[0041] S220. Determine the number of columns containing the window start point and / or window end point in the vertical direction, the number of rows containing the window start point and / or window end point in the horizontal direction, and the number of windows containing the window area in the window region corresponding to the current window screen.

[0042] In this embodiment of the invention, each column of the window area corresponding to the current window screen is traversed to determine the number of columns in the window area containing window start points and / or window end points. This number of columns is taken as the number of columns in the window area corresponding to the current window screen that contain window start points and / or window end points in the vertical direction. The number of columns can also be understood as the number of window start points and / or window end points in the window area corresponding to the current window screen in the vertical direction. In this case, window start points and / or window end points in the same column in the vertical direction are considered as one point. That is, when multiple window start points, multiple window end points, one or more window start points, or one or more window end points overlap in a row or column, they are all counted as one point. Each row of the window area corresponding to the current window screen is traversed to determine the number of rows in the window area containing window start points and / or window end points. This number of rows is taken as the number of rows in the window area corresponding to the current window screen that contain window start points and / or window end points in the horizontal direction. The number of rows can also be understood as the number of window start points and / or window end points in the window area corresponding to the current window screen in the horizontal direction. In this case, window start points and / or window end points in the same row in the horizontal direction are considered as one point. Since the corner point types (window start and window end) of the window area can be identified when drawing the window area corresponding to the upper-level window in the target chart, it is also possible to determine the number of window start points and the number of window end points contained in the window area corresponding to the current window. Furthermore, based on the corner point type identification information, the number of window start points and window end points belonging to the same window area can be determined, and this number is taken as the number of windows containing the upper-level window area within the window area corresponding to the current window. It should be noted that when determining the number of columns containing window start points and / or window end points in the vertical direction within the window area corresponding to the current window, it is unrelated to the number of window start points and / or window end points contained in each column of the window area. As long as a column contains one window start point and / or one window end point, that column is counted as containing window start points and / or window end points. For example, when determining the number of columns, if 3 columns in the window area corresponding to the current window contain window start points and / or window end points, and one column contains multiple window start points and / or window end points, then the number of columns containing window start points and / or window end points in the vertical direction within the window area corresponding to the current window is still determined to be 3. When determining the number of rows in the window region corresponding to the current window that contain the window start and / or window end in the horizontal direction, it is not related to the number of window start and / or window end in each row of the window region. As long as a row contains one window start and / or one window end, the row is counted as a row containing the window start and / or window end.For example, when determining the number of rows, if the 4 rows in the window area corresponding to the current window screen contain the window start point and / or the window end point, and a certain row contains multiple window start points and / or window end points, then the number of rows in the window area corresponding to the current window screen that contain the window start point and / or the window end point in the vertical direction is still determined to be 4.

[0043] For example, the values ​​of all points in the target chart can be 0. Then, after drawing the corresponding window area in the pre-constructed target chart based on the position information of the upper-level window of the current window, the start and end points of the window area corresponding to the upper-level window are represented by 1. Each column of the window area corresponding to the current window is traversed, and the values ​​of each point in each column are summed to determine the first summation result. The number of columns in the window area corresponding to the current window that contain the start and / or end points in the vertical direction is counted. Each row of the window area corresponding to the current window is traversed, and the values ​​of each point in each row are summed to determine the second summation result. The number of rows in the window area corresponding to the current window that contain the start and / or end points in the horizontal direction is counted.

[0044] Optionally, the target chart is a chart constructed based on the output resolution, and the values ​​of each position point in the target chart are arbitrary non-zero values. After drawing the corresponding window areas in the pre-constructed target chart based on the position information of the current window screen and the position information of the upper-level window screen of the current window screen, the method further includes: representing the window start point and window end point of the window area corresponding to the upper-level window screen with 0 respectively; determining the number of columns containing the window start point and / or window end point in the vertical direction and the number of rows containing the window start point and / or window end point in the horizontal direction in the window area corresponding to the current window screen, including: performing a bitwise AND operation on the values ​​of each position point of each column in the window area corresponding to the current window screen to determine a first bitwise AND operation result; taking the number of columns containing the window start point and / or window end point in the vertical direction in the window area corresponding to the current window screen as the number of columns containing the window start point and / or window end point in the vertical direction in the window area corresponding to the current window screen; performing a bitwise AND operation on the values ​​of each position point of each row in the window area corresponding to the current window screen to determine a second bitwise AND operation result; taking the number of rows containing the window start point and / or window end point in the horizontal direction in the window area corresponding to the current window screen as the number of rows containing the window start point and / or window end point in the horizontal direction in the window area corresponding to the current window screen.

[0045] In this embodiment of the invention, the values ​​of each point in the target chart can be any non-zero value. The values ​​of each point in the target chart can be the same or different; for example, the values ​​of each point in the target chart can all be 1. After drawing the corresponding window area in the pre-constructed target chart based on the position information of the upper-level window of the current window, the start and end points of the window area corresponding to the upper-level window are represented by 0. For example, Figure 3 This is a schematic diagram illustrating the drawing of a window area in a target chart, as provided in an embodiment of the present invention. Figure 3 As shown, the yellow area corresponds to the target chart, where all points in the target chart 1 have a value of 1. The blue area represents the window region corresponding to the current window's view, and the two green areas represent the window regions corresponding to the parent window's view, with the start and end points of both green areas represented by 0. The algorithm iterates through each column of the window region corresponding to the current window's view, performing a bitwise AND operation on the values ​​at each point in the current column. The result of the first AND operation is determined, and the number of columns with a result of 0 is counted. This number of columns with a result of 0 is taken as the number of columns in the window region corresponding to the current window's view that vertically contain both the window's start and / or end points. For example... Figure 3 As shown, the number of columns is 4. It should be noted that if there is a position point with a value of 0 in the current column, the result of the AND operation on all positions in the current column is 0; if all positions in the current column have a value of 1, the result of the AND operation on all positions in the current column is 1. Traverse each row of the window area corresponding to the current window's view, perform a AND operation on the values ​​of each position point in the current row, determine the result of the second AND operation, and count the number of rows where the result of the second AND operation is 0. The number of rows where the result of the second AND operation is 0 is taken as the number of rows in the window area corresponding to the current window's view that horizontally include the window's start and / or end points. For example... Figure 3 As shown, the number of rows is 2. It should be noted that if there is a position point with a value of 0 in the current row, the AND operation result of the values ​​at all positions in the current row is 0; if the values ​​at all positions in the current row are 1, the AND operation result of the values ​​at all positions in the current row is 1. In this embodiment of the invention, performing an AND operation on the values ​​at each position point in each column / row is because when the window start point and / or window end point of at least two upper-level window screens are in the same column / row, the current window screen only needs to be sliced ​​once. For example... Figure 3 As shown, the number of windows containing other windows in the current window's view area is 2.

[0046] S230. Determine the number of effective first cut blocks when cutting the current window image according to the first cutting method based on the number of columns and the number of windows; wherein, the first cutting method is to cut vertically first and then cut horizontally.

[0047] In this embodiment of the invention, the number of effective first-cut blocks for vertically cutting and then horizontally cutting the current window image is determined based on the number of columns in the window region corresponding to the current window image that contain the window start point and / or window end point in the vertical direction, and the number of windows in the window region corresponding to the current window image. Optionally, determining the number of effective first-cut blocks for cutting the current window image based on the number of columns and the number of windows includes: determining the number of vertical cut blocks for vertically cutting the current window image first based on the number of columns; wherein the number of vertical cut blocks is the sum of the number of columns and 1; determining the number of effective first-cut blocks for cutting the current window image based on the number of vertical cut blocks and the number of windows; wherein the number of effective first-cut blocks is the sum of the number of vertical cut blocks and the number of windows.

[0048] For example, the sum of the number of columns containing the window's start and / or end points in the vertical direction within the window region corresponding to the current window's image, multiplied by 1, is used as the number of vertically cut blocks when the current window's image is first vertically cut. After vertically cutting the current window's image and then horizontally cutting it, in this embodiment of the invention, the sum of the number of vertically cut blocks and the number of windows containing window regions within the window region corresponding to the current window's image is used as the first effective number of cut blocks when the current window's image is first vertically cut and then horizontally cut. For example, Figure 4 This is a schematic diagram illustrating a cutting process where the current window image is first vertically cut and then horizontally cut, as provided in an embodiment of the present invention. Figure 4 As shown, since the number of columns containing the window's start and / or end points in the vertical direction within the window region corresponding to the current window's view is 4, the number of vertically cut blocks when first vertically cutting the current window's view is 5 (i.e., 4+1). Furthermore, since the number of windows containing window regions within the window region corresponding to the current window's view is 2, the number of effective first-cut blocks when first vertically cutting and then horizontally cutting the current window's view is 7 (i.e., 4+1+2). Note that the effective cut blocks when first vertically cutting and then horizontally cutting the current window's view do not include the areas covered by window regions contained within the window region corresponding to the current window's view.

[0049] S240. Determine the number of effective blocks for the second cut when cutting the current window image according to the second cutting method based on the number of rows and the number of windows; wherein, the second cutting method is to cut horizontally first and then vertically.

[0050] In this embodiment of the invention, the number of effective second-cut blocks for first horizontally cutting and then vertically cutting the current window image is determined based on the number of rows in the window region corresponding to the current window image that contain the window start point and / or window end point in the horizontal direction, and the number of windows in the window region corresponding to the current window image. Optionally, determining the number of effective second-cut blocks for cutting the current window image based on the number of rows and the number of windows includes: determining the number of horizontal cutting blocks for first horizontally cutting the current window image based on the number of rows; wherein the number of horizontal cutting blocks is the sum of the number of rows and 1; determining the number of effective second-cut blocks for cutting the current window image based on the number of horizontal cutting blocks and the number of windows; wherein the number of effective second-cut blocks is the sum of the number of horizontal cutting blocks and the number of windows.

[0051] For example, the number of rows in the window region corresponding to the current window image that contain the window's start and / or end points in the horizontal direction, plus 1, is used as the number of horizontally cut blocks when first horizontally cutting the current window image. After horizontally cutting the current window image, vertically cutting it is then performed. In this embodiment of the invention, the number of horizontally cut blocks and the number of windows containing window regions in the window region corresponding to the current window image are used as the number of second effective cut blocks when horizontally cutting the current window image first and then vertically cutting it. For example, Figure 5 This is a schematic diagram illustrating a method for first horizontally slicing and then vertically slicing the current window image, as provided in an embodiment of the present invention. For example... Figure 5 As shown, since the number of columns containing the window's start and / or end points in the horizontal direction within the window region corresponding to the current window's view is 2, the number of horizontally segmented blocks when first horizontally segmenting the current window's view is 3 (i.e., 2+1). Furthermore, since the number of windows containing window regions within the window region corresponding to the current window's view is 2, the number of effective first-segment blocks when first horizontally segmenting and then vertically segmenting the current window's view is 5 (i.e., 2+1+2). Note that the effective segmented blocks when first horizontally segmenting and then vertically segmenting the current window's view do not include the areas covered by window regions contained within the window region corresponding to the current window's view.

[0052] S250. Determine a target cutting method based on the number of the first and second effective cutting blocks, and cut the current window screen based on the target cutting method; wherein, the target cutting method is one of the first and second cutting methods.

[0053] In this embodiment of the invention, based on the first number of effective cutting blocks and the second number of effective cutting blocks, one of two cutting methods—vertical cutting followed by horizontal cutting and horizontal cutting followed by vertical cutting—is selected as the target cutting method. Optionally, determining the target cutting method based on the first number of effective cutting blocks and the second number of effective cutting blocks includes: determining the size relationship between the first number of effective cutting blocks and the second number of effective cutting blocks; and selecting the cutting method corresponding to the smaller number of effective cutting blocks as the target cutting method. For example, if the first number of effective cutting blocks is less than the second number of effective cutting blocks, then the cutting method corresponding to the first number of effective cutting blocks (i.e., vertical cutting followed by horizontal cutting) is selected as the target cutting method; if the second number of effective cutting blocks is less than the first number of effective cutting blocks, then the cutting method corresponding to the second number of effective cutting blocks (i.e., horizontal cutting followed by vertical cutting) is selected as the target cutting method. If the first number of effective cutting blocks is equal to the second number of effective cutting blocks, then either vertical cutting followed by horizontal cutting or horizontal cutting followed by vertical cutting can be randomly selected as the target cutting method. Then, the current window image is segmented based on the target segmentation method.

[0054] For example, Figure 3 The current window shown has 7 valid blocks for the first cut and 5 valid blocks for the second cut. Therefore... Figure 3 The target segmentation method corresponding to the current window shown is first horizontal segmentation and then vertical segmentation. For example, Figure 6 This is a schematic diagram of a window region distribution provided in an embodiment of the present invention. Figure 6 It can be seen that the number of effective blocks for the first segment corresponding to the current window is 13 (7+1+5), and the number of effective blocks for the second segment is 11 (5+1+5). Figure 6 The target cutting method corresponding to the current window screen shown is horizontal cutting followed by vertical cutting.

[0055] The window display segmentation scheme of this invention, in response to a window display segmentation event being triggered, draws a corresponding window region in a pre-constructed target chart based on the position information of the current window display and the position information of the upper-level window display of the current window display; determines the number of columns containing the window start point and / or window end point in the vertical direction, the number of rows containing the window start point and / or window end point in the horizontal direction, and the number of windows containing the window region in the window region corresponding to the current window display; determines the number of first effective segments when segmenting the current window display based on the number of columns and the number of windows; wherein the first segmentation method is vertical segmentation followed by horizontal segmentation; determines the number of second effective segments when segmenting the current window display based on the number of rows and the number of windows; wherein the second segmentation method is horizontal segmentation followed by vertical segmentation; determines a target segmentation method based on the number of first effective segments and the number of second effective segments, and segments the current window display based on the target segmentation method; wherein the target segmentation method is one of the first segmentation method and the second segmentation method. The technical solution provided by the embodiments of the present invention can quickly and effectively determine the number of cutting blocks corresponding to different cutting methods, thereby selecting the optimal cutting method to cut the window image. Especially for complex window stacking layouts, the present invention can significantly improve efficiency when cutting the image by selecting the optimal cutting method in advance.

[0056] In some embodiments, before segmenting the current window image based on the target segmentation method, the method further includes: determining whether the number of effective blocks corresponding to the target segmentation method is less than a preset effective block number threshold; segmenting the current window image based on the target segmentation method includes: if the number of effective blocks corresponding to the target segmentation method is less than the preset effective block number threshold, then segmenting the current window image based on the target segmentation method. Since after segmenting the window image, relevant parameters need to be configured for the generated effective blocks, the more effective blocks there are, the more relevant parameters are generated, and the more resources are consumed. However, the transmission resources of the splicing control device are limited. Therefore, in order to ensure that the segmented window image meets the transmission resource requirements of the splicing control device, a certain limit is placed on the number of effective blocks generated by the segmentation of the window image, i.e., a preset effective block number threshold is set. Determining whether the number of effective blocks corresponding to the target segmentation method (the number of first effective blocks or the number of second effective blocks) is less than the preset effective block number threshold indicates that segmenting the current window image based on the target segmentation method can meet the transmission resource requirements of the splicing control device. Therefore, the current window image can be segmented based on the target segmentation method. Optionally, if the number of valid blocks corresponding to the target segmentation method exceeds a preset threshold, it indicates that segmenting the current window image based on the target segmentation method cannot meet the transmission resource requirements of the splicing control device. In this case, an error message can be returned to the client, and the segmentation operation on the current window image will no longer be performed. The advantage of this setting is that it can determine in advance whether the number of valid blocks for segmenting the current window image meets the transmission resource requirements of the splicing control device before segmenting the current window image. This effectively solves the technical problem in the prior art that it is necessary to complete the window image segmentation operation before determining whether the number of valid blocks for segmenting the window image meets the transmission resource requirements of the splicing control device, thus failing to provide early warning.

[0057] Optionally, before segmenting the current window image based on the target segmentation method, the method further includes: determining a target window region that intersects with the window region corresponding to the current window image; determining the intersection position between the current window image and the window image corresponding to the target window region; and segmenting the current window image based on the target segmentation method, including: segmenting the current window image at the intersection position based on the target segmentation method. The advantage of this configuration is that it allows for the rapid determination of a target window region that intersects with the window region corresponding to the current window image, thereby enabling the segmentation operation of the current window image based on the window image corresponding to the target window region.

[0058] For example, when drawing the window area corresponding to the window view in the target chart, a corresponding window view identifier, such as a window view ID, can be added to the window area. For example, Figure 7 This is a schematic diagram illustrating the addition of a window screen ID to a window area drawn in a target chart, as provided in an embodiment of the present invention. The method involves creating a new target chart, drawing the window area corresponding to the current window screen and the parent window screen in the newly created target chart, and adding the corresponding window screen ID to the window area in the newly created target chart. Optionally, the corresponding window screen ID can also be added to the window area within the same target chart. To distinguish the window screen ID from the identifiers of the window's start and end points, the window screen ID can be added to positions other than the window's start and end points within the window area. Figure 7 As shown, the window region corresponding to the current window has a window image ID of 3, and the window regions corresponding to the two parent window images have window image IDs of 1 and 2 respectively. It is determined whether the window region corresponding to the current window contains a window start point and / or a window end point. If so, it is determined that there exists a parent window region that intersects with the window region corresponding to the current window. For example, if the values ​​of all points in the target chart are 1, and the window start point and window end point of the parent window region are both represented by 0, it can be determined whether there is a 0 in the window region corresponding to the current window. If so, it is determined that there exists a parent window region that intersects with the window region corresponding to the current window. When it is determined that there is a parent window region that intersects with the window region corresponding to the current window, the parent window region that intersects with the window region corresponding to the current window is further determined based on the window image ID of the window region (i.e., which one or more parent window regions intersect with the window region corresponding to the current window). The intersection position of the current window and the window images corresponding to the target window region is determined, and the current window is cut at the intersection position based on the target cutting method.

[0059] Figure 8 This is a schematic diagram of a window screen cutting device provided in an embodiment of the present invention. Figure 8 As shown, the device includes:

[0060] The window area drawing module 810 is used to draw the corresponding window area in a pre-constructed target chart in response to the window screen cutting event being triggered, based on the position information of the current window screen and the position information of the upper-level window screen of the current window screen.

[0061] The quantity determination module 820 is used to determine the number of columns containing the window start point and / or window end point in the vertical direction, the number of rows containing the window start point and / or window end point in the horizontal direction, and the number of windows containing the window area in the window region corresponding to the current window screen; the first effective block determination module 830 is used to determine the first effective block number when cutting the current window screen according to the first cutting method based on the number of columns and the number of windows; wherein, the first cutting method is to cut vertically first and then cut horizontally;

[0062] The second effective block number determination module 840 is used to determine the second effective block number when cutting the current window screen according to the second cutting method based on the number of rows and the number of windows; wherein, the second cutting method is to cut horizontally first and then vertically.

[0063] The window screen cutting module 850 is used to determine a target cutting method based on the number of first effective cutting blocks and the number of second effective cutting blocks, and to cut the current window screen based on the target cutting method; wherein the target cutting method is one of the first cutting method and the second cutting method.

[0064] Optionally, the target chart is a chart constructed based on the output resolution, and the value of each position point in the target chart is any non-zero value;

[0065] The device further includes:

[0066] The window start and end point representation module is used to represent the start and end points of the window area corresponding to the upper layer window image with 0 after drawing the corresponding window area in the pre-constructed target chart according to the position information of the current window image and the position information of the upper layer window image.

[0067] The quantity determination module is used for:

[0068] Perform a bitwise AND operation on the values ​​of each position point in each column of the window area corresponding to the current window screen to determine the first bitwise AND operation result;

[0069] The number of columns in the window region corresponding to the current window screen that contain the window start point and / or window end point in the vertical direction is taken as the number of columns with the first operation result of 0.

[0070] Perform a bitwise AND operation on the values ​​of each position point in each row of the window area corresponding to the current window screen to determine the result of the second bitwise AND operation;

[0071] The number of rows in the window region corresponding to the current window screen that contain the start and / or end points of the window in the horizontal direction is taken as the number of rows where the result of the second operation is 0.

[0072] Optionally, the first effective block number determination module is used for:

[0073] The number of vertical cut blocks when vertically cutting the current window image is performed is determined based on the number of columns; wherein, the number of vertical cut blocks is the sum of the number of columns and 1;

[0074] The number of effective first cutting blocks is determined based on the number of vertical cutting blocks and the number of windows when cutting the current window image according to the first cutting method; wherein, the number of effective first cutting blocks is the sum of the number of vertical cutting blocks and the number of windows.

[0075] Optionally, the second effective block number determination module is used for:

[0076] The number of horizontal cut blocks when horizontally cutting the current window screen is performed is determined based on the number of rows; wherein, the number of horizontal cut blocks is the sum of the number of rows and 1;

[0077] The number of effective second cutting blocks is determined based on the number of horizontal cutting blocks and the number of windows when cutting the current window image according to the second cutting method; wherein, the number of effective second cutting blocks is the sum of the number of horizontal cutting blocks and the number of windows.

[0078] Optionally, the window display segmentation module is used for:

[0079] Determine the relationship between the number of the first effective cutting blocks and the number of the second effective cutting blocks;

[0080] The cutting method corresponding to the smaller number of effective cutting blocks between the first number of effective cutting blocks and the second number of effective cutting blocks is taken as the target cutting method.

[0081] Optional, also includes:

[0082] The target segmentation effective block count determination module is used to determine whether the number of target segmentation effective blocks corresponding to the target segmentation method is less than a preset effective block count threshold before segmenting the current window screen based on the target segmentation method.

[0083] The window display segmentation module is used for:

[0084] If the number of valid blocks corresponding to the target cutting method is less than the preset valid block number threshold, then the current window screen is cut based on the target cutting method.

[0085] Optionally, the device further includes:

[0086] The target window region determination module is used to determine a target window region that intersects with the window region corresponding to the current window before cutting the current window image based on the target cutting method;

[0087] The intersection position determination module is used to determine the intersection position between the current window image and the window image corresponding to the target window area;

[0088] The window display segmentation module is used for:

[0089] The current window image is cut at the intersection position based on the target cutting method.

[0090] The window screen cutting device provided in this embodiment of the invention can execute the window screen cutting method provided in any embodiment of the invention, and has the corresponding functional modules and beneficial effects of the method.

[0091] Figure 9 A schematic diagram of a control device 10, which can be used to implement embodiments of the present invention, is shown. The control device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The control device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.

[0092] like Figure 9 As shown, the control device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 can also store various programs and data required for the operation of the control device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.

[0093] Multiple components in the control device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard and mouse; an output unit 17, such as various types of displays and speakers; a storage unit 18, such as a disk and optical disk; and a communication unit 19, such as a network card, modem, or wireless transceiver. The communication unit 19 allows the control device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0094] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as window screen slicing methods.

[0095] In some embodiments, the window screen cutting method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on the splicing control device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the window screen cutting method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the window screen cutting method by any other suitable means (e.g., by means of firmware).

[0096] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0097] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0098] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0099] To provide interaction with the user, the systems and techniques described herein can be implemented on a splicing control device, which includes: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the splicing control device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0100] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or computing systems that include middleware components (e.g., application servers), or computing systems that include frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.

[0101] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.

[0102] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.

[0103] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.

Claims

1. A method for slicing a window image, characterized in that, include: In response to the window screen cutting event being triggered, the corresponding window area is drawn in the pre-constructed target chart according to the position information of the current window screen and the position information of the upper layer window screen of the current window screen respectively; Determine the number of columns containing the window start and / or window end in the vertical direction, the number of rows containing the window start and / or window end in the horizontal direction, and the number of windows containing the window area in the window region corresponding to the current window screen; The number of effective first cut blocks is determined based on the number of columns and the number of windows when the current window image is cut according to the first cutting method; wherein, the first cutting method is to cut vertically first and then cut horizontally. The number of effective blocks for the second cut is determined based on the number of rows and the number of windows when the current window image is cut according to the second cutting method; wherein, the second cutting method is to cut horizontally first and then vertically. Based on the number of first and second effective cutting blocks, a target cutting method is determined, and the current window image is cut based on the target cutting method; wherein, the target cutting method is one of the first cutting method and the second cutting method.

2. The method according to claim 1, characterized in that, The target chart is a chart constructed based on the output resolution, and the value of each point in the target chart can be any non-zero value; After drawing the corresponding window areas in the pre-constructed target graph based on the position information of the current window and the position information of the window above the current window, the process further includes: The start and end points of the window area corresponding to the upper-level window image are represented by 0; Determine the number of columns containing the window's start and / or end points in the vertical direction and the number of rows containing the window's start and / or end points in the horizontal direction within the window area corresponding to the current window's view, including: Perform a bitwise AND operation on the values ​​of each position point in each column of the window area corresponding to the current window screen to determine the first bitwise AND operation result; The number of columns in the window region corresponding to the current window screen that contain the window start point and / or window end point in the vertical direction is taken as the number of columns with the first operation result of 0. Perform a bitwise AND operation on the values ​​of each position point in each row of the window area corresponding to the current window screen to determine the result of the second bitwise AND operation; The number of rows in the window region corresponding to the current window screen that contain the start and / or end points of the window in the horizontal direction is taken as the number of rows where the result of the second operation is 0.

3. The method according to claim 1, characterized in that, Determining the number of effective blocks for the first cut when cutting the current window image according to the first cutting method based on the number of columns and the number of windows includes: The number of vertical cut blocks when vertically cutting the current window image is performed is determined based on the number of columns; wherein, the number of vertical cut blocks is the sum of the number of columns and 1; The number of effective first cutting blocks is determined based on the number of vertical cutting blocks and the number of windows when cutting the current window image according to the first cutting method; wherein, the number of effective first cutting blocks is the sum of the number of vertical cutting blocks and the number of windows.

4. The method according to claim 1, characterized in that, Determining the number of effective blocks for the second cut when cutting the current window image using the second cutting method based on the number of rows and the number of windows includes: The number of horizontal cut blocks when horizontally cutting the current window screen is performed is determined based on the number of rows; wherein, the number of horizontal cut blocks is the sum of the number of rows and 1; The number of effective second cutting blocks is determined based on the number of horizontal cutting blocks and the number of windows when cutting the current window image according to the second cutting method; wherein, the number of effective second cutting blocks is the sum of the number of horizontal cutting blocks and the number of windows.

5. The method according to claim 1, characterized in that, Based on the number of the first effective cutting blocks and the number of the second effective cutting blocks, the target cutting method is determined, including: Determine the relationship between the number of the first effective cutting blocks and the number of the second effective cutting blocks; The cutting method corresponding to the smaller number of effective cutting blocks between the first number of effective cutting blocks and the second number of effective cutting blocks is taken as the target cutting method.

6. The method according to claim 1, characterized in that, Before segmenting the current window image based on the target segmentation method, the method further includes: Determine whether the number of effective blocks corresponding to the target cutting method is less than a preset effective block number threshold; The current window image is segmented based on the target segmentation method, including: If the number of valid blocks corresponding to the target cutting method is less than the preset valid block number threshold, then the current window screen is cut based on the target cutting method.

7. The method according to claim 1, characterized in that, Before segmenting the current window image based on the target segmentation method, the method further includes: Determine a target window region that intersects with the window region corresponding to the current window screen; Determine the intersection position between the current window view and the window view corresponding to the target window area; The current window image is segmented based on the target segmentation method, including: The current window image is cut at the intersection position based on the target cutting method.

8. A window image cutting device, characterized in that, include: The window area drawing module is used to draw the corresponding window area in a pre-constructed target chart in response to the window screen cutting event being triggered, based on the position information of the current window screen and the position information of the upper-level window screen of the current window screen respectively. The quantity determination module is used to determine the number of columns containing the window start point and / or window end point in the vertical direction, the number of rows containing the window start point and / or window end point in the horizontal direction, and the number of windows containing the window area in the window region corresponding to the current window screen. The first effective block quantity determination module is used to determine the first effective block quantity when cutting the current window image according to the first cutting method based on the number of columns and the number of windows; wherein, the first cutting method is to cut vertically first and then cut horizontally. The second effective block quantity determination module is used to determine the second effective block quantity when cutting the current window screen according to the second cutting method based on the number of rows and the number of windows; wherein, the second cutting method is to cut horizontally first and then vertically. The window display segmentation module is used to determine a target segmentation method based on the number of first effective segmentation blocks and the number of second effective segmentation blocks, and to segment the current window display based on the target segmentation method; wherein the target segmentation method is one of the first segmentation method and the second segmentation method.

9. A control device, characterized in that, The control device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the window screen cutting method according to any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute the window screen cutting method according to any one of claims 1-7.