Disclosure of Invention
In view of the above, the present disclosure provides a filtering method and apparatus, a display device, an electronic device, and a storage medium.
According to an aspect of the present disclosure, there is provided a filtering method including: determining a size and a type of a filter window for filtering a sensor data array acquired by a sensor array, wherein the sensor array comprises a plurality of touch sensors of a screen, the touch sensors are used for acquiring sensor data in the sensor data array, and the type of the filter window comprises a row filter window and a column filter window; according to the size of the filter window, carrying out filter processing on the sensor data in the filter window at an initial position to obtain the filter data in the filter window at the initial position, wherein the initial position is the initial position of the filter window in the sensor data array; moving the filtering window from the initial position in the sensor data array according to the type of the filtering window to obtain filtering data in the filtering window after each movement; and obtaining a filtered sensor data array according to the filtering data in the filtering window of the initial position and the filtering data in the filtering window after each movement.
In one possible implementation, the determining a type of a filtering window for filtering a sensor data array acquired by a sensor array includes: under the condition that the moving direction of the filtering window is moving along the row direction, the type of the filtering window is a column filtering window; or in the case that the moving direction of the filter window is moving along the column direction, the type of the filter window is a row filter window.
In a possible implementation manner, performing filtering processing on the sensor data in the filtering window at an initial position according to the size of the filtering window to obtain filtering data in the filtering window at the initial position includes: performing polynomial fitting processing according to the sensor data in the filtering window and index information of the sensor data to obtain polynomial coefficients, wherein the index information of the sensor data is determined according to the size of the filtering window, the sensor data in the filtering window forms a data sequence, and the index information is an index of the sensor data in the data sequence; and obtaining filtering data in the filtering window according to the polynomial coefficient and the index information of the sensor data.
In a possible implementation manner, the size of the filtering window is an odd number, the number of the sensor data in the filtering window is equal to the size of the filtering window, and the index information includes two or more serial numbers and 0 that are opposite numbers to each other.
In a possible implementation manner, performing polynomial fitting processing according to the sensor data in the filtering window and the index information of the sensor data to obtain a polynomial coefficient includes: obtaining an index matrix according to the index information and the times of the polynomial; and obtaining the polynomial coefficient according to the index matrix and the sensor data in the filtering window.
In one possible implementation, obtaining the filtering data in the filtering window according to the polynomial coefficient and the index information of the sensor data includes: and obtaining filtering data in the filtering window according to the index matrix and the polynomial coefficient.
In one possible implementation, the determining a size of a filter window for filtering a sensor data array acquired by a sensor array includes: and determining the size of the filtering window according to the single scanning line number or the single scanning column number of the screen.
According to another aspect of the present disclosure, there is provided a filtering apparatus including: the device comprises a filtering window determining module, a filtering window determining module and a filtering window determining module, wherein the filtering window determining module is used for determining the size and the type of a filtering window for filtering a sensor data array acquired by a sensor array, the sensor array comprises a plurality of touch sensors of a screen, the touch sensors are used for acquiring sensor data in the sensor data array, and the type of the filtering window comprises a row filtering window and a column filtering window; the filtering module is used for carrying out filtering processing on the sensor data in the filtering window at an initial position according to the size of the filtering window to obtain the filtering data in the filtering window at the initial position, wherein the initial position is the initial position of the filtering window in the sensor data array; a moving module, configured to move the filtering window from the initial position in the sensor data array according to the type of the filtering window, to obtain filtering data in the filtering window after each movement; and the obtaining module is used for obtaining the filtered sensor data array according to the filtering data in the filtering window at the initial position and the filtering data in the filtering window after each movement.
In one possible implementation, the filter window determining module is further configured to: under the condition that the moving direction of the filtering window is moving along the row direction, the type of the filtering window is a column filtering window; or in the case that the moving direction of the filter window is moving along the column direction, the type of the filter window is a row filter window.
In one possible implementation, the filtering module is further configured to: performing polynomial fitting processing according to the sensor data in the filtering window and index information of the sensor data to obtain polynomial coefficients, wherein the index information of the sensor data is determined according to the size of the filtering window, the sensor data in the filtering window forms a data sequence, and the index information is an index of the sensor data in the data sequence; and obtaining filtering data in the filtering window according to the polynomial coefficient and the index information of the sensor data.
In a possible implementation manner, the size of the filtering window is an odd number, the number of the sensor data in the filtering window is equal to the size of the filtering window, and the index information includes two or more serial numbers and 0 that are opposite numbers to each other.
In one possible implementation, the filtering module is further configured to: obtaining an index matrix according to the index information and the times of the polynomial; and obtaining the polynomial coefficient according to the index matrix and the sensor data in the filtering window.
In one possible implementation, the filtering module is further configured to: and obtaining filtering data in the filtering window according to the index matrix and the polynomial coefficient.
In one possible implementation, the filter window determining module is further configured to: and determining the size of the filtering window according to the number of the single scanning lines or the number of the single scanning columns of the screen.
According to another aspect of the present disclosure, there is provided a display device comprising a plurality of display units including a sensor array and a processor configured to implement the above method by executing instructions.
In one possible implementation, the display unit includes a display panel including at least one of a liquid crystal display panel, a micro-light emitting diode display panel, a mini-light emitting diode display panel, a quantum dot light emitting diode display panel, an organic light emitting diode display panel, a cathode ray tube display panel, a digital light processing display panel, a field emission display panel, a plasma display panel, an electrophoretic display panel, an electrowetting display panel, and a small-pitch display panel.
According to another aspect of the present disclosure, there is provided an electronic device including the above display device.
According to another aspect of the present disclosure, there is provided a non-transitory computer readable storage medium having computer program instructions stored thereon, wherein the computer program instructions, when executed by a processor, implement the above-described method.
According to another aspect of the present disclosure, there is provided a computer program product comprising computer readable code, or a non-transitory computer readable storage medium carrying computer readable code, which when run in a processor of an electronic device, the processor in the electronic device performs the above method.
According to another aspect of the present disclosure, there is provided a driving chip for performing the filtering method.
According to the filtering method disclosed by the embodiment of the disclosure, the filtering data in the filtering window can be determined based on the size of the filtering window, the filtering window is moved based on the type of the filtering window, the sensor data in the filtering window can be filtered simultaneously in the moving process, the timeliness of filtering processing is improved, the operation amount can be reduced, the calculation load is reduced, and the filtering effect on noise is improved.
Other features and aspects of the present disclosure will become apparent from the following detailed description of exemplary embodiments, which proceeds with reference to the accompanying drawings.
Detailed Description
Various exemplary embodiments, features and aspects of the present disclosure will be described in detail below with reference to the accompanying drawings. In the drawings, like reference numbers can indicate functionally identical or similar elements. While the various aspects of the embodiments are presented in drawings, the drawings are not necessarily drawn to scale unless specifically indicated.
In the description of the present disclosure, it is to be understood that the terms "length," "width," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," "outer," and the like, as used herein, refer to an orientation or positional relationship indicated in the drawings, which is solely for the purpose of facilitating the description and simplifying the description, and does not indicate or imply that the referenced device or element must have a particular orientation, be constructed and operated in a particular orientation, and, therefore, should not be taken as limiting the present disclosure.
Furthermore, the terms "first", "second" and "first" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or to implicitly indicate the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of the present disclosure, "a plurality" means two or more unless specifically limited otherwise.
In the present disclosure, unless otherwise expressly stated or limited, the terms "mounted," "connected," "secured," and the like are to be construed broadly and can, for example, be fixedly connected, detachably connected, or integral; can be mechanically or electrically connected; they may be directly connected or indirectly connected through intervening media, or may be connected through the use of two elements or the interaction of two elements. The specific meaning of the above terms in the present disclosure can be understood as a specific case by a person of ordinary skill in the art.
The term "and/or" herein is merely an association relationship describing an associated object, and means that there may be three relationships, for example, a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, the term "at least one" herein means any one of a plurality or any combination of at least two of a plurality, for example, including at least one of a, B, and C, and may mean including any one or more elements selected from the group consisting of a, B, and C.
Fig. 1 shows a flow diagram of a filtering method according to an embodiment of the present disclosure. As shown in fig. 1, the filtering method includes:
in step S11, a size and a type of a filter window for filtering a sensor data array acquired by a sensor array are determined, where the sensor array includes a plurality of touch sensors of a screen, the touch sensors are used for acquiring sensor data in the sensor data array, and the type of the filter window includes a row filter window and a column filter window.
Wherein a plurality of sensor data of a column direction of the sensor data array may be included within the column filter window, a plurality of sensor data of a row direction of the sensor data array may be included within the row filter window, and a number of sensor data included within the filter window corresponds to a size of the filter window.
In step S12, according to the size of the filter window, performing filter processing on the sensor data in the filter window at an initial position to obtain the filter data in the filter window at the initial position, where the initial position is an initial position of the filter window in the sensor data array;
in step S13, moving the filtering window from the initial position in the sensor data array according to the type of the filtering window, and obtaining filtering data in the filtering window after each movement;
in step S14, a filtered sensor data array is obtained according to the filtering data in the filtering window at the initial position and the filtering data in the filtering window after each movement.
According to the filtering method disclosed by the embodiment of the disclosure, the filtering data in the filtering window can be determined based on the size of the filtering window, the filtering window is moved based on the type of the filtering window, the sensor data in the filtering window can be filtered simultaneously in the moving process, the timeliness of filtering processing is improved, the operation amount can be reduced, the calculation load is reduced, and the filtering effect on noise is improved.
In one possible implementation, a display device such as a screen (e.g., a touch screen) may include a sensor array, which may include a plurality of touch sensors, and may be used to detect a touch signal (e.g., pressure applied to a certain location of the screen, induced charge, etc.) of a user on the screen to determine a touch location. The sensor array may be distributed under the screen so as to detect a touch signal of a user to each position of the screen. The sensor array can be refreshed according to a set frequency (namely, the sensor is enabled to gather new data again), so that the sensor data array obtained according to the set frequency can be refreshed according to the row or the column without refreshing the sensor data array all at once, and the sensor data array can be grouped according to the row or the column and refreshed respectively and sequentially. The sensor data in the sensor data array corresponds to the touch sensors in the sensor array, i.e., each sensor data is obtained by a touch sensor.
In one possible implementation, the sensor data may carry environmental noise, such as high frequency noise, and thus, the sensor data may be filtered to improve the accuracy of the detection of the touch signal. However, the methods of median filtering, mean filtering, etc. in the related art have poor timeliness and large computation.
Specifically, the sensor array may perform filtering processing at a set frequency, and due to performance limitations of hardware devices, the data collected by all the sensors in the sensor array is generally not filtered as a whole, but the sensor array is divided into a plurality of groups by rows or columns, and each group of sensors is filtered. For example, the sensor array may include 1280 × 720 touch sensors, may be grouped by rows, e.g., into 10 groups, each group including 1280 × 72 sensors, or may be grouped by columns, e.g., into 10 groups, each group including 128 × 720 sensors. Further, each group may be filtered in turn. However, although the set frequency may be set to a high value, that is, the time interval between groups for filtering is short, there still exists a time interval, that is, when a certain group is filtered, filtering is performed by traversing each sensor data in the group, so that filtering processing of each data needs to be performed sequentially, not simultaneously, so that the efficiency of filtering processing in the group is low, and the waiting time of filtering processing between groups is prolonged, so that the timeliness of filtering processing is reduced. That is, when filtering certain sensor data in a group, other touch sensors in the group may have acquired new sensor data and introduced new noise, or when filtering certain sensor data in a group, touch sensors in other groups may have acquired new sensor data and introduced new noise. The new noise causes the filtering process based on the previous sensor data to fail or the filtering effect to be degraded. In addition, in the related art, filtering processing needs to be performed sequentially by traversing each sensor data, so that the load of processing resources of hardware equipment is large, and the efficiency is low.
In a possible implementation manner, to overcome the above problem, a filter window may be set, and data in the filter window may be simultaneously subjected to filtering processing, and the type of the filter window may correspond to the moving direction of the filter window, and the moving direction of the filter window may correspond to the above grouping manner for the sensor array. Therefore, the timeliness of the filtering processing can be improved, and the load of processing resources can be reduced.
In one possible implementation, the size and type of the filter window may be determined in step S11.
In a possible implementation manner, as described above, the type of the filter window may correspond to a moving direction of the filter window, and the moving direction of the filter window may correspond to the above-mentioned grouping manner for the sensor array, and therefore, step S11 may include: under the condition that the moving direction of the filtering window is moving along the row direction, the type of the filtering window is a column filtering window; or in the case that the moving direction of the filtering window is moving along the column direction, the type of the filtering window is a row filtering window.
Fig. 2A and 2B illustrate schematic diagrams of a filter window according to an embodiment of the present disclosure. As shown in fig. 2A, the grid array in fig. 2A represents one set of sensor data arrays, and the sensor data arrays are grouped by rows, so that the number of columns of the sensor data arrays is the same as the set of sensor data in fig. 2A, and the number of rows is greater than the number of rows of the set of sensor data in fig. 2A. Multiple groups as shown in FIG. 2A may also be included in the sensor data array. In the case where the grouping manner is grouping by rows, the type of the filter window may be set to a column filter window in which a plurality of sensor data of a column direction of the sensor data array are included, and a moving direction of the filter window is moving in a row direction. That is, the column filter window may move in the direction of the rows, traversing all of the sensor data within the group, i.e., upon each movement, traversing to multiple sensor data in the column in which the column filter window is located. Furthermore, when the filtering processing is carried out, all data in the column filtering windows can be simultaneously subjected to the filtering processing, so that the timeliness of the filtering processing in the filtering windows is improved, the timeliness of the filtering processing in the groups is further improved, the waiting time of the filtering processing between the groups is reduced, and the timeliness of the filtering processing between the groups is improved.
In one possible implementation, as shown in fig. 2B, the grid array in fig. 2B represents one set of sensor data arrays, and the sensor data arrays are grouped by columns, so that the number of rows of the sensor data arrays is the same as the set of sensor data in fig. 2B, and the number of columns is greater than the number of columns of the set of sensor data in fig. 2A. Multiple groups as shown in FIG. 2B may also be included in the sensor data array. In the case that the grouping manner is grouping by columns, the type of the filter window may be set as a row filter window, a plurality of sensor data in a row direction of the sensor data array is included in the row filter window, and a moving direction of the filter window is moving in a column direction. That is, the row filter window may move in the direction of the columns and traverse all of the sensor data within the group, i.e., at each movement, may traverse to a number of sensor data in the row in which the row filter window resides. Furthermore, when the filtering processing is carried out, all data in the line filtering window can be subjected to the filtering processing at the same time, so that the timeliness of the filtering processing in the filtering window is improved, the timeliness of the filtering processing in the group is improved, the waiting time of the filtering processing between the groups is reduced, and the timeliness of the filtering processing between the groups is improved.
In one possible implementation, the size of the filter window may be determined in addition to the type of filter window determined above. Step S11 may include: and determining the size of the filtering window according to the number of the single refreshing rows or the number of the single refreshing columns of the screen.
In an example, as described above, the sensor array may be divided into a plurality of groups by rows or columns, and the groups of sensors are filtered separately. As each group is filtered, the sensor data within the group may be scanned to update the sensor data within the group to filtered data. Where the sensor arrays are grouped by row, the sensor data for each row within the group may be scanned, updating the scanned sensor data to filtered data. In the case where the sensor array is grouped by columns, the sensor data for each column within the group may be scanned, thereby updating the scanned sensor data to filtered data.
In an example, according to the above scanning manner, the size of the filter window may be determined according to the number of lines or columns in a single scan of the screen. For example, where the sensor array is grouped by rows, the number of rows scanned per time is the number of rows of sensor data in the group, i.e., each row is scanned, in which case the size of the filter window (e.g., column filter window) can be determined as the number of rows of sensor data in the group, as well as the number of rows scanned per time, so that the data in a column can be scanned in its entirety, i.e., the data in a column can be filtered and updated as filtered data, with one movement of the filter window (one unit of forward scan), and after the scan is completed, all of the sensor data in the group can be traversed. Similarly, where the sensor array is grouped by columns, a single scan column is the number of columns of sensor data in the group, i.e., each column is scanned, in which case the filter window (e.g., row filter window) may be sized to be the number of columns of sensor data in the group, or the number of columns of the single scan, so that the data in a row may be scanned in its entirety, i.e., the data in a row may be filtered and updated as filtered data, with one movement of the filter window (scanning forward one unit), and after the scan is complete, all of the sensor data in the group may be traversed. Of course, the size of the filter window may be larger or smaller than the number of rows or columns in a single scan, which is not limited by the present disclosure.
In an example, the number of rows or columns per scan may also be equal to the number of rows or columns per refresh of the sensor array. I.e., the number of rows or columns in which the sensor data array is refreshed, grouped by row or column. The present disclosure is not so limited.
In one possible implementation, after determining the size and type of the filter window, it may occur that the sensor data does not fill the filter window at the initial or end position of the sensor data array. For example, the number of rows of the sensor data array is not an integer multiple of the number of rows in each group, or the number of columns of the sensor data array is not an integer multiple of the number of columns in each group; for another example, when setting the initial position of the filter window, the center position of the filter window is set with reference to the center position rather than the first position, so that the center position of the filter window is set to the first data of the sensor data array, for example, the size of the column filter window is 5, when setting the initial position of the column filter window, the center position (i.e., the 3 rd position) of the column filter window is set with reference to the center position of the column filter window, and the 3 rd position of the filter window is set to the position of the first data of the sensor data array, so that the first two positions of the column filter window have data gaps. In the above case, the data missing in the filtering window may be supplemented, for example, the position of the missing is supplemented to be data such as 0,1 or a random number, and the specific value of the supplemented data is not limited in the present disclosure. Alternatively, the filter window may be shifted, for example, the filter window referenced to the third position may be shifted to the filter window referenced to the 1 st position, so that the 1 st to 5 th data in a column of the sensor data array may be included in the filter window, thereby filling the filter window. Alternatively, the size of the filter window may be reduced, for example, the size of the filter window 5 may be reduced to 3, when the data is empty in the filter window, so that the data in the filter window is filled. The present disclosure does not limit the processing manner when there is a vacancy in the data within the filtering window.
In a possible implementation manner, in step S12, after the size and the type of the filter window are determined according to the above, the sensor data in the filter window may be subjected to a filtering process, that is, all of the plurality of sensor data in the filter window may be updated to the filter data. In the filtering process, the sensor data in the filtering window can be updated into the filtering data at the same time instead of being processed in sequence, so that the timeliness of the filtering process can be improved.
In one possible implementation, step S12 may include: performing polynomial fitting processing according to the sensor data in the filtering window and index information of the sensor data to obtain polynomial coefficients, wherein the index information of the sensor data is determined according to the size of the filtering window, the sensor data in the filtering window forms a data sequence, and the index information is an index of the sensor data in the data sequence; and obtaining filtering data in the filtering window according to the polynomial coefficient and the index information of the sensor data.
In one possible implementation, the index information is an index of the sensor data in the filter window, and not an index of the sensor data in the sensor data array. For example, the sensor data within the filter window may constitute a data sequence, e.g., the size of the filter window is 5 (5 is the number of rows or columns), and the index of the sensor data may be 1-5, representing rows 1-5 or columns 1-5, i.e., the index of the sensor data in the data sequence, rather than the index of the sensor data in the original sensor data array. In an example, the size of the filtering window is an odd number, the number of sensor data in the filtering window is equal to the size of the filtering window, and the index information includes two or more sequence numbers that are opposite numbers and 0. That is, the filter window may be positioned with reference to the center, the index of data positioned at the center of the filter window is 0, the index of data positioned before the data is a negative number, and the index of data positioned after the data is a positive number in the data sequence. For example, if the size of the filter window is 5, the index of the sensor data may be-2, -1,0,1,2. The present disclosure does not limit the size of the filter window and the specific form of the index information. The polynomial coefficient is determined by the index information of the sensor data in the filter window, so that the polynomial independent variable is determined data, namely, the index information of the sensor data in the filter window is a fixed value determined according to the size of the filter window no matter how the filter window moves, the independent variable in the polynomial is determined, the operation amount in calculating the polynomial coefficient is reduced, and the operation resource load is reduced.
In a possible implementation manner, performing polynomial fitting processing according to the sensor data in the filtering window and the index information of the sensor data to obtain a polynomial coefficient includes: obtaining an index matrix according to the index information and the times of the polynomial; and obtaining the polynomial coefficient according to the index matrix and the sensor data in the filtering window.
In one possible implementation, the sensor data and its index information within the filtering window may be subjected to a polynomial fitting process, in an example, the fitting process may be performed according to the following equation (1):
y=a 0 +a 1 x+a 2 x 2 +…+a k-1 x k-1 (1)
wherein x is index information of the sensor data, y is the sensor data, k is the degree of the polynomial, and a plurality of coefficients a of the polynomial can be determined based on formula (1) and the sensor data and the index information thereof 0 、a 1 …a k-1 The relational expression (c) of (a). For example, taking the above sensor data in the filter window with size 5 and index information of-2, -1,0,1,2 as an example, the first sensor data in the filter window can be substituted into y and its index information of-2 into x, and a polynomial coefficient a can be obtained 0 、a 1 …a k-1 By analogy, the first sensor data in the filtering window can be substituted into y, the index information-1 is substituted into x, and a polynomial coefficient a can be obtained 0 、a 1 …a k-1 The relation of (A) is 8230to obtain 5 polynomial coefficients a 0 、a 1 …a k-1 The relational expression (c) of (c). Furthermore, the value of the polynomial coefficient can be determined by various fitting methods, such as least squares, etc., and the fitting method is not limited by the present disclosure.
In the example, since the index information is a certain value, for example, in the above 5 relations, the index information is all-2, -1,0,1,2. Therefore, the above-described plural relational expressions can be expressed as the following formula (2):
Y=XA+E (2)
wherein Y is a vector formed by sensor data,
a is a vector composed of polynomial coefficients,
e is a residual vector, and E is a residual vector,
x is an index matrix that, in the example,
wherein, the index information can be represented as-m, -
m +1 \8230, 0 \8230, m-1, m +1, in this case, the size of the filtering window is 2m +1 (odd number).
In a possible implementation, the above index matrix includes two parameters m and k, where m may be determined by the size of the filtering window and k may be determined by the coefficients of the polynomial, and thus, in the case where m and k are both determined values, the index matrix is a determined matrix.
In one possible implementation, a least squares solution of the polynomial coefficients may be determined by a least squares method. In an example, the polynomial coefficients may be determined according to equation (3) below:
A=(X T ·X) -1 ·X T ·Y (3)
in one possible implementation, the polynomial coefficient a is obtained by least squares
0 、a
1 …a
k-1 . Therefore, based on the polynomial coefficients, the filtered data corresponding to each index information can be solved. In an example, each index information and polynomial coefficient may be substituted into formula (1), and filtered data corresponding to each index information may be obtained
That is, the sensor data y is filtered to obtain filtered data. Obtaining filtering data in the filtering window according to the polynomial coefficient and the index information of the sensor data, including: and obtaining filtering data in the filtering window according to the index matrix and the polynomial coefficient. In an example, the filtered data within the filter window may be determined according to equation (4) below:
i.e. by matrix multiplicationAnd solving the filtering data corresponding to each index information in a form of a method, wherein,
wherein,
the data are respectively the filtering data corresponding to index information-m \8230, 0 \8230m. The formula (4) is essentially the same as the mode of substituting the polynomial, but a plurality of filter data can be solved simultaneously by using the formula (4) to carry out matrix multiplication, and the efficiency and the timeliness of the filter processing are improved.
In a possible implementation manner, the filtering data in the filtering window at the initial position is solved, in step S13, the filtering window may be moved, and after each movement, the filtering data corresponding to the sensor data in the filtering window after movement is solved, that is, the sensor data in the filtering window after movement is filtered to obtain the filtering data in the filtering window after movement, and the filtering manner is the same as that of the sensor data in the filtering window at the initial position, and is not described herein again. As described above, in the case where the window type is the column filter window, the moving direction of the filter window is the moving in the row direction; in case the window type is a row filter window, the moving direction of the filter window is a moving in the column direction. Over multiple moves, the filter window may traverse all of the sensor data in the sensor array, i.e., filter all of the sensor data.
In one possible implementation manner, in step S14, after filtering all the sensor data, filtered data of all the sensor data after filtering, that is, filtered data in the initial position filtering window and filtered data in each shifted filtering window, can be obtained. After filtering of all sensor data is completed, a filtered sensor array may be obtained.
According to the filtering method disclosed by the embodiment of the disclosure, the index information of the sensor data in the filtering window can be determined based on the size of the filtering window, the polynomial coefficient is solved according to the index information, the filtering data is obtained in a polynomial filtering mode, a plurality of filtering data in the filtering window can be obtained at the same time, and the operation efficiency is improved. Furthermore, the filtering window can be moved based on the type of the filtering window, and the sensor data in the filtering window can be filtered simultaneously in the moving process, so that the filtering data can be obtained more efficiently, the timeliness of filtering processing is improved, the operation amount can be reduced, the calculation load is reduced, and the filtering effect on noise is improved.
Fig. 3A, 3B, 3C, and 3D are schematic diagrams illustrating application of a filtering method according to an embodiment of the disclosure, as shown in fig. 3A, the sensor data in a 32 × 18 sensor data array is unfiltered sensor data, and there may be a noise signal in the sensor data. For example, in the area from row 17, column 11 to row 22, column 17, a touch signal of a user may be detected, i.e., the sensor data in this area is significantly larger than the sensor data in other areas, and the sensor data in each area may carry a noise signal, thereby possibly affecting the detection of the touch signal.
In one possible implementation, as shown in fig. 3C, each broken line in fig. 3C may represent a column of data in fig. 3A, the number of columns being indicated on the broken line, the ordinate of fig. 3C being the value of the sensor data, and the abscissa of fig. 3C being the number of rows. As shown in fig. 3C, although it can be definitely detected that the sensor data is large in the area of the 17 th row, the 11 th column to the 22 nd row, the 17 th column, an abnormal increase in the sensor signal may be detected in other areas due to the noise signal, for example, in the area of the 8 th row, the 1 st column to the 7 th row, the 14 th column, or in the areas of the 15 th row, the 9 th column and the 30 th row, the 8 th column, which may be caused by the noise signal, and may affect the detection of the touch signal.
In one possible implementation, as shown in fig. 3B, the sensor data in the sensor data array in fig. 3A may be filtered, for example, the sensor data may be divided into 2 groups by columns, each group includes 32 rows and 9 columns of data, the filter window may be set as a row filter window, and the size of the row filter window may be set to 9, that is, 9 data in one row in each group may be all subjected to filter processing at a time, for example, the filtered data is solved according to equation (4), and all sensor data in the group is traversed during the movement process to perform the filter processing, so as to obtain a filtered sensor data array.
In one possible implementation, as shown in fig. 3D, after the filtering process, it can still be accurately detected that the sensor data in the region from the 17 th row, the 11 th column to the 22 nd row, the 17 th column is large, i.e., the touch signal is detected. However, in the areas of the 8 th row, the 1 st column, the 7 th row, the 14 th column, the 15 th row, the 9 th column and the 30 th row, the 8 th column, the broken line is relatively gentle, so that the noise signal with abnormally increased sensor signals is filtered out, and the influence on the detection of the touch signal is reduced.
In a possible implementation manner, the filtering method can be used in a scene of filtering sensor signals of a touch screen, so that the sensor data is filtered with higher timeliness and efficiency under a smaller load of operation resources, and the detection accuracy of the touch signals is improved. The application field of the filtering method is not limited by the present disclosure, for example, the filtering method may also be used in the field of filtering signals of touch sensors in other fields, or in the field of filtering data arrays of other types, which is not limited by the present disclosure.
Fig. 4 shows a block diagram of a filtering apparatus according to an embodiment of the present disclosure, as shown in fig. 4, the apparatus includes: a filter window determining module 11, configured to determine a size and a type of a filter window for filtering a sensor data array acquired by a sensor array, where the sensor array includes a plurality of touch sensors of a screen, the touch sensors are used to acquire sensor data in the sensor data array, and the type of the filter window includes a row filter window and a column filter window; a filtering module 12, configured to perform filtering processing on the sensor data in the filtering window at an initial position according to the size of the filtering window, so as to obtain filtering data in the filtering window at the initial position, where the initial position is an initial position of the filtering window in the sensor data array; a moving module 13, configured to move the filtering window from the initial position in the sensor data array according to the type of the filtering window, so as to obtain filtering data in the filtering window after each movement; and an obtaining module 14, configured to obtain a filtered sensor data array according to the filtering data in the filtering window at the initial position and the filtering data in the filtering window after each movement.
In one possible implementation, the filter window determining module is further configured to: under the condition that the moving direction of the filtering window is moving along the row direction, the type of the filtering window is a column filtering window; or in the case that the moving direction of the filter window is moving along the column direction, the type of the filter window is a row filter window.
In one possible implementation, the filtering module is further configured to: performing polynomial fitting processing according to the sensor data in the filtering window and index information of the sensor data to obtain polynomial coefficients, wherein the index information of the sensor data is determined according to the size of the filtering window, the sensor data in the filtering window forms a data sequence, and the index information is an index of the sensor data in the data sequence; and obtaining filtering data in the filtering window according to the polynomial coefficient and the index information of the sensor data.
In a possible implementation manner, the size of the filtering window is an odd number, the number of the sensor data in the filtering window is equal to the size of the filtering window, and the index information includes two or more serial numbers and 0 that are opposite numbers to each other.
In one possible implementation, the filtering module is further configured to: obtaining an index matrix according to the index information and the times of the polynomial; and obtaining the polynomial coefficient according to the index matrix and the sensor data in the filtering window.
In one possible implementation, the filtering module is further configured to: and obtaining filtering data in the filtering window according to the index matrix and the polynomial coefficient.
In one possible implementation, the filter window determining module is further configured to: and determining the size of the filtering window according to the number of the single scanning lines or the number of the single scanning columns of the screen.
The present disclosure also provides a display device including a plurality of display units including a sensor array and a processor configured to implement the filtering method by executing instructions.
In one possible implementation, the display unit includes a display panel including at least one of a liquid crystal display panel, a micro-light emitting diode display panel, a mini-light emitting diode display panel, a quantum dot light emitting diode display panel, an organic light emitting diode display panel, a cathode ray tube display panel, a digital light processing display panel, a field emission display panel, a plasma display panel, an electrophoretic display panel, an electrowetting display panel, and a small-pitch display panel.
The present disclosure also provides an electronic device including the above display device. For example, the electronic device in the embodiment includes, but is not limited to, a desktop computer, a television, a mobile device with a large-sized screen such as a mobile phone, a tablet computer, and other common electronic devices that require multiple chip-level connections to implement driving.
The electronic device may also be, for example, a User Equipment (UE), a mobile device, a User terminal, a handheld device, a computing device, or a vehicle-mounted device, and some examples of the terminal are: a display, a Smart Phone or a portable device, a Mobile Phone (Mobile Phone), a tablet computer, a notebook computer, a palmtop computer, a Mobile Internet Device (MID), a wearable device, a Virtual Reality (VR) device, an Augmented Reality (AR) device, a wireless terminal in Industrial Control (Industrial Control), a wireless terminal in unmanned driving (self), a wireless terminal in Remote Surgery (Remote Surgery), a wireless terminal in Smart Grid, a wireless terminal in Transportation Safety (Transportation Safety), a wireless terminal in Smart City (Smart City), a wireless terminal in Smart Home (Smart Home), a wireless terminal in car networking, and the like. For example, the server may be a local server or a cloud server.
Fig. 5 illustrates a block diagram of an electronic device 1900 in accordance with an embodiment of the disclosure. For example, the electronic device 1900 may be provided as a server or terminal device. Referring to fig. 5, electronic device 1900 includes a processing component 1922 further including one or more processors and memory resources, represented by memory 1932, for storing instructions, e.g., applications, that are executable by processing component 1922. The application programs stored in memory 1932 may include one or more modules that each correspond to a set of instructions. Further, the processing component 1922 is configured to execute instructions to perform the above-described method.
The electronic device 1900 may further include a power component 1926 configured to perform power management of the electronic device 1900, a wired or wireless network interface 1950 configured to connect the electronic device 1900 to a network, and an input/output (I/O) interface 1958. The electronic device 1900 may operate based on an operating system stored in memory 1932, such as Windows Server, mac OS XTM, unixTM, linuxTM, freeBSDTM, or the like.
In an exemplary embodiment, a non-transitory computer readable storage medium, such as the memory 1932, is also provided that includes computer program instructions executable by the processing component 1922 of the electronic device 1900 to perform the above-described methods.
The present disclosure also provides a driving chip for performing the filtering method.
The above description is intended to be illustrative of the present invention and not to limit the scope of the invention, which is defined by the claims appended hereto.
The word "exemplary" is used exclusively herein to mean "serving as an example, embodiment, or illustration. Any embodiment described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrases "comprising a," "8230," "8230," or "comprising" does not exclude the presence of additional like elements in a process, method, article, or apparatus that comprises the element.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
Having described embodiments of the present disclosure, the foregoing description is intended to be exemplary, not exhaustive, and not limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen in order to best explain the principles of the embodiments, the practical application, or improvements made to the technology in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.