Noise reduction device, noise reduction method, and program
The noise reduction device and method address the challenge of noise in three-dimensional graphs by minimizing graph bending through rank reduction, enhancing data accuracy.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- NIPPON TELEGRAPH & TELEPHONE CORP
- Filing Date
- 2022-11-07
- Publication Date
- 2026-07-30
AI Technical Summary
Existing techniques struggle to effectively remove noise from three-dimensional graphs, which degrades the accuracy of data representation.
A noise reduction device and method that utilize a control unit to perform rank reduction processes on three-dimensional graphs based on a rank determination matrix of connection vectors, minimizing the bending and deviation of vertices to eliminate noise.
The method effectively reduces noise in three-dimensional graphs, improving data accuracy by minimizing graph bending and vertex deviations.
Smart Images

Figure 0007897525000009 
Figure 0007897525000010 
Figure 0007897525000011
Abstract
Description
Technical Field
[0001] The present invention relates to a noise removal device, a noise removal method, and a program.
Background Art
[0002] There is a technique for analyzing an analysis target by representing the analysis target as a graph and analyzing the graph.
Prior Art Documents
Non-Patent Documents
[0003]
Non-Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] In general, it is desirable to remove noise in data analysis, and the technique of analyzing an analysis target by analyzing a graph is no exception. However, until now, it has been difficult to remove noise contained in a three-dimensional graph.
[0005] A graph represents an object such as a three-dimensional model, and the noise contained in the graph means a factor that degrades the accuracy of the representation of the object by the graph. For the sake of simplicity, a specific example is shown to explain the concept of noise. For example, among the vertices of a graph with a degree of 2, if there is a bend at the target vertex but there is no bend in the object represented by the graph, the position of the target vertex is in a state where it has changed from the true value due to noise. Thus, noise is a deviation from the true value of the position of the vertex.
[0006] In view of the above circumstances, the present invention aims to provide a technique for removing noise contained in a three-dimensional graph. [Means for solving the problem]
[0007] One aspect of the present invention is a noise reduction device for removing noise from a three-dimensional graph, the noise reduction device comprising a control unit that performs a process on the three-dimensional graph, wherein for each vertex of the graph to be processed, the process of reducing the rank is performed based on the rank of a rank determination matrix, which is a matrix of connection vectors, where the connection vectors start at the vertex and end at a vertex adjacent to the vertex.
[0008] One aspect of the present invention is a noise reduction method for removing noise from a three-dimensional graph, the method comprising a control step of performing a process on the three-dimensional graph, where for each vertex of the graph to be processed, the process of reducing the rank is performed based on the rank of a rank determination matrix, which is a matrix of connection vectors, where the connection vectors start at the vertex and end at a vertex adjacent to the vertex.
[0009] One aspect of the present invention is a program for causing a computer to function as the above-mentioned noise reduction device. [Effects of the Invention]
[0010] This invention makes it possible to remove noise contained in a three-dimensional graph. [Brief explanation of the drawing]
[0011] [Figure 1] A diagram showing an example of the configuration of the noise processing device according to the embodiment. [Figure 2] An explanatory diagram illustrating the noise contained in the graph in the embodiment. [Figure 3] The first explanatory diagram illustrates an example of variables X and ∇X in the embodiment, using the case where the graph to be processed is an octahedron as an example. [Figure 4]A second explanatory diagram illustrating an example of the variables X and ∇X in the embodiment, using the case where the graph to be processed is an octahedron as an example. [Figure 5] A third explanatory diagram illustrating an example of variables X and ∇X in the embodiment, using the case where the graph to be processed is an octahedron as an example. [Figure 6] A fourth explanatory diagram illustrating an example of variables X and ∇X in the embodiment, using the case where the graph to be processed is an octahedron as an example. [Figure 7] A fifth explanatory diagram illustrating an example of variables X and ∇X in the embodiment, using the case where the graph to be processed is an octahedron as an example. [Figure 8] A flowchart showing an example of the processing flow performed by the noise reduction device in the embodiment. [Figure 9] A figure showing an example of experimental results in a modified example. [Figure 10] A diagram illustrating an example of a graph in graph theory. [Modes for carrying out the invention]
[0012] (Embodiment) The following explanation will use terminology related to graphs in graph theory. For clarity, explanations of graph-related terminology in graph theory will be provided after the explanation of the modified examples. Please refer to them as needed.
[0013] Figure 1 shows an example of the configuration of a noise reduction apparatus 1 according to an embodiment. The noise reduction apparatus 1 includes a control unit 11 which comprises a processor 91 such as a CPU (Central Processing Unit) and a memory 92 connected by a bus, and executes a program.
[0014] The control unit 11 performs noise reduction processing, which is a process that removes noise contained in a 3D graph, which is a 3D graph, as the processing target. The object represented by the processing target is, for example, a 3D point cloud. That is, the processing target is, for example, a 3D graph representing a 3D point cloud.
[0015] The noise removal process includes a rank reduction process. The rank reduction process is a process of reducing the rank based on the rank of a matrix (hereinafter referred to as the "rank determination matrix") formed by arranging vectors (hereinafter referred to as "connection vectors") with each vertex of the graph to be processed as the starting point and the vertices adjacent to that vertex as the ending points. Since the noise removal process only needs to include the rank reduction process, the noise removal process may be the rank reduction process itself.
[0016] As is well known in algebra such as linear algebra, the rank of a matrix is the number of mutually independent vectors when each column is regarded as one vector. Note that since swapping the rows and columns of a matrix makes the rows become columns, the rank of a matrix may also be the number of mutually independent vectors when each row is regarded as one vector.
[0017] By the way, the noise included in the graph means the deviation in the state where the position of the vertex is deviated from the true value. When the position of the vertex is deviated from the true value, at that vertex position, a bend in the edge occurs. Therefore, if a process of evaluating the degree of bending and searching for the position of the vertex that reduces it can be executed, the noise in the graph can be removed.
[0018] By the way, the bend at the vertex of interest means that among a plurality of vectors with the vertex as the starting point or the ending point, a plurality of vectors parallel to the edge are not parallel. That the vectors are not parallel means that the vectors are independent. Therefore, the degree of bending can be evaluated by the rank of the rank determination matrix formed by arranging the vectors parallel to the edge. And since the noise causes bends in the graph, the noise in the graph can be evaluated by the rank of the matrix.
[0019] FIG. 2 is an explanatory diagram for explaining the noise included in the graph in the embodiment. FIG. 2 shows two graphs, graph G1 and graph G2, indicating that graph G2 is the graph obtained by removing noise from graph G1. Obviously, graph G2 has fewer bends than graph G1.
[0020] Rank reduction is a process that solves the optimization problem shown in equation (1) below, for example.
[0021]
number
[0022]
number
[0023] P is a matrix representing the graph being processed by the noise reduction process. More specifically, it is a matrix representing the coordinate values of each vertex of the graph being processed by the noise reduction process. X is a variable. Therefore, the value of variable X in the optimized state is the optimization solution. That is, variable X in the optimized state is the result of the noise reduction process. Therefore, variable X in the optimized state is a matrix representing the graph after noise reduction. More specifically, variable X in the optimized state is a matrix representing the coordinate values of each vertex of the graph after noise reduction. B is the orientation connection matrix of the graph being processed by the noise reduction process.
[0024] ||·|| * represents the kernel norm. λ is a predetermined weighting coefficient. k is an identifier that identifies the vertices of the graph being denoised. The rank of the rank determination matrix is obtained for each vertex of the graph being denoised. Therefore, R shown in equation (2) represents the sum of the ranks of all vertices. Thus, R is a quantity that indicates the degree of bending of the graph.
[0025] Therefore, solving the optimization problem in equation (1) means optimizing so that the difference between the denoised graph and the undenoised graph, and the degree of bending in the graph, are minimized.
[0026] Figure 3 is the first explanatory diagram illustrating an example of variables X and ∇X in the embodiment, using the case where the graph to be processed is an octahedron as an example. Figure 3 shows the graph of the octahedron to be processed.
[0027] Figure 4 is a second explanatory diagram illustrating an example of the variables X and ∇X in the embodiment, using the case where the graph to be processed is an octahedron as an example. Figure 4 shows the matrix P when the graph to be processed is the graph shown in Figure 3.
[0028] Figure 5 is a third explanatory diagram illustrating an example of the variables X and ∇X in the embodiment, using the case where the graph to be processed is an octahedron as an example. Figure 5 shows the orientation connection matrix B when the graph to be processed is the graph shown in Figure 3.
[0029] Figure 6 is a fourth explanatory diagram illustrating an example of variables X and ∇X in the embodiment, using the case where the graph to be processed is an octahedron as an example. Figure 6 shows the variable X when the graph to be processed is the graph shown in Figure 3.
[0030] Figure 7 is a fifth explanatory diagram illustrating an example of the variables X and ∇X in the embodiment, using the case where the graph to be processed is an octahedron as an example. Figure 7 shows the case where k=1 is the graph shown in Figure 3, and ∇ k This indicates X.
[0031] The optimization problem in equation (1) can be solved, for example, by sequentially executing the update equations (3) to (5) below. The update equations include auxiliary variables Y and Z. The superscript (n) indicates the iteration number in the sequential process. K indicates the number of vertices. Therefore, I Κ γ represents the identity matrix with K rows and columns. L represents the graph Laplacian of the graph being processed. γ represents the step size.
[0032]
number
[0033]
number
[0034]
number
[0035]
number
[0036] The symbols following `for` in equations (4) and (5) indicate that k is an identifier that identifies a vertex of the graph being processed. The symbols following `where` in equation (6) indicate the singular value decomposition representation of Y.
[0037] <Explanation of an example hardware configuration> Returning to the explanation of Figure 1, let's describe an example of the hardware configuration of the noise reduction device 1. As described above, the noise reduction device 1 includes a control unit 11 that executes a program. The noise reduction device 1 functions as a device comprising a control unit 11, an interface unit 12, and a storage unit 13 through the execution of the program.
[0038] More specifically, the processor 91 reads the program stored in the storage unit 13 and stores the read program in the memory 92. By executing the program stored in the memory 92, the noise reduction device 1 functions as a device comprising a control unit 11, an interface unit 12, and a storage unit 13.
[0039] The control unit 11 performs, for example, noise reduction processing. The control unit 11 controls, for example, the operation of each functional unit of the noise reduction device 1. The control unit 11 obtains the processing target for noise reduction processing, for example, via the interface unit 12. Specifically, obtaining the processing target means obtaining a matrix that shows the graph of the processing target. The control unit 11 obtains, for example, the information stored in the storage unit 13. Specifically, the process of obtaining the information stored in the storage unit 13 is reading.
[0040] The interface unit 12 includes a communication interface for connecting the noise reduction device 1 to an external device. The interface unit 12 communicates with the external device via wired or wireless connection. The external device is, for example, the source device of the data to be processed. In this case, the interface unit 12 acquires the data to be processed by communicating with the source device of the data to be processed. The external device may also be, for example, the output destination for the results of the noise reduction processing. In this case, the interface unit 12 outputs the results of the noise reduction processing to the output destination for the results of the noise reduction processing.
[0041] The interface unit 12 includes input devices such as a mouse, keyboard, or touch panel. The interface unit 12 may also be configured as an interface for connecting these input devices to the noise reduction device 1. In this way, the interface unit 12 receives various types of information input to the noise reduction device 1 via input devices, wired or wireless connections.
[0042] The interface unit 12 outputs various types of information. The interface unit 12 is comprised of a display device such as a CRT (Cathode Ray Tube) display, a liquid crystal display, or an organic EL (Electro-Luminescence) display. The interface unit 12 may be configured as an interface for connecting these display devices to the noise reduction device 1. The interface unit 12 outputs information input to the interface unit 12, for example.
[0043] The storage unit 13 is configured using a computer-readable storage medium (non-transitory computer-readable recording medium) such as a magnetic hard disk drive or a semiconductor memory device. The storage unit 13 stores various information related to the noise reduction device 1. The storage unit 13 stores, for example, information necessary for noise reduction processing. The storage unit 13 stores, for example, various information generated by the operation of the control unit 11. The storage unit 13 stores, for example, information acquired by the interface unit 12.
[0044] Figure 8 is a flowchart showing an example of the processing flow performed by the noise reduction device 1 in the embodiment. The control unit 11 acquires the processing target (step S101). The control unit 11 performs noise reduction processing on the processing target (step S102).
[0045] The noise reduction device 1 configured in this way uses the rank of a matrix as a quantity indicating the bending of the 3D graph to be processed, and performs a process to reduce the rank. Therefore, it can reduce the bending of the graph to be processed. As mentioned above, noise causes bending of the graph, so the noise in the graph can be evaluated by the rank of the matrix. Therefore, the noise reduction device 1 that reduces the bending of the 3D graph to be processed can remove the noise contained in the 3D graph.
[0046] (Examples of application) The 3D graph being processed is, for example, a graph showing the distribution of electroencephalograms (EEGs). The 3D graph being processed is, for example, a graph showing a 3D point cloud.
[0047] (modified version) By the way, since the target of noise reduction processing is a 3-dimensional graph, a 3-column matrix appears in the noise reduction process. However, if a 3-column matrix can be approximated by the sum of lower-dimensional matrices, the computation time required for noise reduction can be shortened. An N-column matrix (where N is an integer greater than or equal to 1) is a matrix with N columns. Therefore, in noise reduction processing, one may solve the equation expressed using, for example, the following approximation formula (7). Formula (7) approximates the kernel norm of a 3-column matrix to the sum of the kernel norms of 2-column matrices. In formula (7), S means a 3-column matrix. s1, s2, and s3 represent the 1st, 2nd, and 3rd columns of the 3-column matrix Y, respectively.
[0048]
number
[0049]
number
[0050] Since a 3D matrix can be represented as the sum of 2D matrices, by applying the approximation formula (7) instead of the pre-approximation formula, it is possible to perform the noise reduction process in a shorter computation time.
[0051] Furthermore, the approximation formula in equation (7) may be applied to equation (4) above, for example, and the resulting equation may be executed in the noise reduction process. When applying the approximation formula in equation (7) to equation (4), the approximation formula in equation (7) is applied to Y in equation (4). In such a case, in equation (4), the operation of summing the kernel norms of two-column matrices is performed instead of the operation of the kernel norm of a three-column matrix.
[0052] (Experimental results) We conducted an experiment to evaluate the accuracy of the approximation using the approximation formula (7) above. Figure 9 shows an example of experimental results in a modified example. The horizontal axis represents the amount of noise added to the 3D graph in the experiment. The vertical axis represents the amount of noise removed by noise reduction processing in the experiment. "Optimization (23) with SVD-SVT" shows the results when no approximation was performed in the noise reduction processing. "Optimization (31) with FPSVT" shows the results when approximation was performed in the noise reduction processing.
[0053] The experimental results in Figure 9 show that even with noise reduction using the approximation in equation (7), the noise reduction accuracy is almost the same as when no approximation is used. Thus, approximating the 3-column matrix kernel norm to the sum of 2-column matrix kernel norms makes it possible to reduce computation time with almost no decrease in accuracy.
[0054] The noise reduction device 1 may be implemented using multiple information processing devices connected to each other via a network. In this case, each process performed by the control unit 11 may be performed in a distributed manner by the multiple information processing devices.
[0055] Furthermore, all or part of the functions of the noise reduction device 1 may be implemented using hardware such as an ASIC (Application Specific Integrated Circuit), PLD (Programmable Logic Device), or FPGA (Field Programmable Gate Array). The program may be recorded on a computer-readable recording medium. Computer-readable recording media include, for example, portable media such as flexible disks, magneto-optical disks, ROMs, and CD-ROMs, and storage devices such as hard disks built into computer systems. The program may also be transmitted via a telecommunications line.
[0056] <Explanation of graphs in graph theory> This section will explain graphs in graph theory, such as graph Laplacian matrices, using concrete examples.
[0057] Figure 10 shows an example of a graph in graph theory. The graph shown in Figure 10 is a weighted undirected graph with four vertices numbered 1 through 4. The degree of vertex 1 in the graph shown in Figure 10 is 3, the degree of vertex 2 is 2, the degree of vertex 3 is 3, and the degree of vertex 4 is 2.
[0058] In the graph shown in Figure 10, the weight of the edge connecting vertex 1 and vertex 2 is 1.0, the weight of the edge connecting vertex 1 and vertex 3 is 1.5, and the weight of the edge connecting vertex 1 and vertex 4 is 0.8. Therefore, the element in the first row and first column of the graph Laplacian matrix is 1.0 + 1.5 + 0.8 = 3.3, the element in the first row and second column of the graph Laplacian matrix is -1.0, the element in the first row and third column of the graph Laplacian matrix is -1.5, and the element in the first row and third column of the graph Laplacian matrix is -0.8.
[0059] Thus, when i and j are different, the element in the i-th row and j-th column of the graph Laplacian matrix is the weight of the edge connecting vertex i and vertex j with a negative sign. If vertex i and vertex j are not connected, the element in the i-th row and j-th column of the graph Laplacian matrix is 0. On the other hand, when i and j are the same (i.e., i=j), the element in the i-th row and j-th column of the graph Laplacian matrix is the sum of the edge weights of vertex i. In other words, the graph Laplacian matrix is the result of subtracting the adjacency matrix from the degree matrix.
[0060] In the graph shown in Figure 10, the weight of the edge connecting vertex 2 and vertex 3 is 2.2, the weight of the edge connecting vertex 2 and vertex 1 is 1.0 as described above, and vertex 2 and vertex 4 are not connected. Therefore, the 2x2 diagonal component of the graph Laplacian matrix is 2.2 + 1.0 = 3.2, the 2x1 component is -1.0, the 2x3 component is -2.2, and the 2x4 component is 0.
[0061] In the graph shown in Figure 10, the weight of the edge connecting vertex 3 and vertex 2 is 2.2, as mentioned above; the weight of the edge connecting vertex 3 and vertex 1 is 1.5, as mentioned above; and the weight of the edge connecting vertex 3 and vertex 4 is 1.2. Therefore, the 3x3 component of the diagonal of the graph Laplacian matrix is 2.2 + 1.5 + 1.2 = 4.9; the 3x1 component of the graph Laplacian matrix is -1.5; the 3x2 component of the graph Laplacian matrix is -2.2; and the 3x4 component of the graph Laplacian matrix is -1.2.
[0062] In the graph shown in Figure 10, the weight of the edge connecting vertex 4 and vertex 1 is 0.8, as mentioned above, the weight of the edge connecting vertex 4 and vertex 3 is 1.2, as mentioned above, and vertex 4 and vertex 2 are not connected. Therefore, the 4th row and 4th column of the diagonal elements of the graph Laplacian matrix is 0.8 + 1.2 = 2.0, the 4th row and 1st column of the graph Laplacian matrix is -0.8, the 4th row and 2nd column of the graph Laplacian matrix is 0, and the 4th row and 3rd column of the graph Laplacian matrix is -1.2.
[0063] While embodiments of this invention have been described in detail above with reference to the drawings, the specific configuration is not limited to these embodiments and includes designs and the like that do not depart from the spirit of this invention. [Explanation of Symbols]
[0064] 1...Noise reduction device, 11...Control unit, 12...Interface unit, 13...Storage unit, 91...Processor, 92...Memory
Claims
1. A noise reduction device that removes noise from a three-dimensional graph, A control unit that performs a process for processing the aforementioned three-dimensional graph, wherein for each vertex of the graph to be processed, it performs a process to reduce the rank based on the rank of a rank determination matrix, which is a matrix of connection vectors, each of which is a vector starting at the vertex and ending at a vertex adjacent to the vertex. Equipped with, The sum of the ranks of all vertices of the object being processed is used as a quantity indicating the degree of bending of the object being processed. Noise reduction device.
2. The process of lowering the rank is an optimization process that reduces the difference between the graph after noise reduction and the graph before noise reduction, and the degree of bending in the graph. The noise reduction device according to claim 1.
3. A noise reduction method for removing noise from a three-dimensional graph, A control step for processing the aforementioned three-dimensional graph, wherein for each vertex of the graph to be processed, a process is performed to reduce the rank based on the rank of a rank determination matrix, which is a matrix of connection vectors, each of which is a vector starting at the vertex and ending at a vertex adjacent to the vertex. It has, The sum of the ranks of all vertices of the object being processed is used as a quantity indicating the degree of bending of the object being processed. Noise reduction methods.
4. A program for causing a computer to function as a noise reduction device according to claim 1 or 2.
Citation Information
Patent Citations
Embedded graph simplification device, embedded graph simplification method, and computer program
JP2018136797A