Method for identifying three-dimensional structure branch type of fruit tree
By constructing a directed graph of fruit tree branches and using graph theory algorithms, the problem of lack of automatic identification of fruit tree functional branches in the existing technology is solved, and the accurate and automatic acquisition of fruit tree functional information is achieved, and more effective fruit tree cultivation management is supported.
Patent Information
- Application Number
- CN202510309374.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-17
- Publication Date
- 2025-04-15
- Estimated Expiration
- 2045-03-17
AI Technical Summary
The prior art lacks a method to automatically identify various functional branches of fruit trees, which makes it difficult to align the branch type information in the fruit tree digital model with the branch function defined by horticultural cultivation management.
By constructing a directed graph that expresses the topological structure of fruit branches and trunks, using graph theory algorithm and similarity calculations, we can identify the parts contained in various branches and trunks to realize automatic acquisition of fruit branches and trunk functional information.
It realizes accurate, efficient and automatic acquisition of functional information of fruit tree branches, provides quantitative information that reflects the number, distribution and topological relationship of various types of fruit tree branches, and supports more effective fruit tree cultivation management.
Smart Images

Figure CN119832167A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the field of digital modeling and growth monitoring of fruit trees, and in particular to a method for identifying three-dimensional structural branch types of fruit trees. Background Art
[0002] Modern standardized fruit trees are regularly shaped and pruned during the production cycle to form a reasonable combination of branches and trunks with different functions, so as to control the growth of fruit trees, light penetration in the canopy, flowering and fruiting, and reasonable distribution of nutrients, so as to achieve high-quality and high-yield fruits. Identifying the types and functional attributes of fruit tree branches, extracting their quantity and spatial distribution information, and constructing a digital model of fruit trees can accurately evaluate the effects of cultivation and management, and predict the number of flowering and fruiting of fruit trees. It is one of the key links in digital and intelligent cultivation and management. The types of branches that make up the standard tree shape mainly include the main trunk, main branches, and fruiting branches. Some trees with more complex structures further divide the branches connected to the main branches into sub-main branches, side branches, etc. Each type of branch has a corresponding main function.
[0003] In the current practice of fruit tree cultivation and management, the method of identifying the functional types of fruit tree branches mainly relies on manual observation and identification based on experience on site, and there is a lack of automatic identification and judgment methods. With the development of smart agriculture, the demand for collecting accurate branch structure and functional attribute information using new digital and information technologies is increasing, and technologies and models related to the digitization of fruit trees have been developed one after another, such as the technology of reconstructing the three-dimensional structure of the fruit tree surface by acquiring point cloud data with laser scanners and quantitative structural models of trees. However, there is still a lack of methods to accurately identify the various functional branches of fruit trees from three-dimensional data, which makes it difficult to align the branch type information of the fruit tree digital model with the branch function defined by horticultural cultivation and management. Summary of the invention
[0004] The purpose of the present invention is to provide a method for identifying the types of branches in the three-dimensional structure of fruit trees. According to the topological relationship, attribute difference and similarity of the starting point, end point and bifurcation point in different types of branches, the parts included in each type of branches are gradually determined and identified by using graph theory algorithm and similarity, so as to realize automatic identification of functional branch types and division of nodes included in each functional branch through three-dimensional data of fruit tree branches.
[0005] In order to achieve the above object, the present invention adopts the following technical solutions: A method for identifying the type of branches and trunks of a fruit tree in three-dimensional structure, comprising the following steps: Use the three-dimensional structure data of fruit trees to construct a directed graph expressing the topological structure of branches and trunks; Identify the nodes contained in the result branch; Identify the nodes that the trunk contains; Identify the order of each main branch and the nodes it contains; Identify the order of each sub-branch on the main branch and the nodes they contain; In some embodiments, the three-dimensional structure data of the fruit tree is a set of cylinders fitting the surface of branches and trunks, and the data includes the radius, length, starting point position, direction vector and adjacency relationship of the cylinders; the construction of a directed graph expressing the topological structure of branches and trunks includes: using the cylinder set as nodes of the directed graph, creating edges of the directed graph according to the adjacency relationship; creating node attributes, storing the radius, length, starting point position, direction vector and node type of the cylinder; In some embodiments, the identification of nodes included in the result branch includes: starting from a node (end point) with an out-degree of 0 in the directed graph, querying a path from the end point to the nearest first bifurcation point (a node with an out-degree>1), the nodes included in the path are the nodes included in the result branch, the node adjacent to the bifurcation point is the starting point of the result branch, updating the node type to the result branch, and completing the identification of the result branch; In some embodiments, the identification backbone comprises nodes including: Take the node with the in-degree of the directed graph of 0 as the first parent node of the trunk, search for child nodes, select nodes whose node type is not a fruit branch, use the diameter and direction vector of the parent and child nodes to calculate the similarity, and judge whether the child node belongs to the trunk based on the similarity. If there is a child node whose similarity is greater than the threshold, it is identified as a trunk node. If the similarity between more than two child nodes and the parent node is greater than the threshold, the node with the largest similarity is selected as the trunk node. After updating the node type to the trunk, continue to search and identify the next trunk node. If the similarity between all child nodes and the parent node is less than the threshold, it is judged that no child node belongs to the trunk, and the trunk node identification is completed. In some embodiments, the identification of each main branch sorting and the nodes contained therein includes: searching for a node whose node type is a trunk and whose out-degree is greater than 1, searching for a child node with this node as a parent node, and then selecting a node whose node type is not a trunk and a non-fruit branch as a main branch starting point, calculating the distance from the main branch starting point to the root node, sorting the distances in ascending order from small to large, and identifying the main branch nodes in sequence from the starting point of each main branch according to the similarity of the diameter and direction vector of the parent and child nodes, and marking the main branch type according to the condition that the similarity is greater than a threshold or the similarity is the largest and the node type is not a fruit branch; In some embodiments, the identification of the sorting of each sub-main branch and the nodes it contains includes: searching for a node whose node type is a main branch and whose out-degree is greater than 1, using this node as the parent node to search for its child nodes, and then selecting a node whose node type is not a main branch or a fruit-bearing branch as the starting point of the sub-main branch, calculating the distance from the starting point of each sub-main branch to the starting point of the main branch where it is located, and sorting them in ascending order from small to large; starting from the starting point of the sub-main branch, identifying the sub-main branch nodes according to the comprehensive similarity of the diameter and direction vector of the parent and child nodes, and marking the sub-main branch type according to the condition that the similarity is greater than a threshold or the similarity is the maximum and the node type is not a fruit-bearing branch.
[0006] The method disclosed in this application for identifying the type of branches and trunks of three-dimensional structures of fruit trees may bring about beneficial effects including but not limited to: The data processed by the present invention quantitatively describes the distribution of the main trunk, main branch, fruiting branch, sub-main branch, etc. of the fruit tree, as well as the relationship between the adjacency and inclusion of each branch. The final result is information reflecting the number, distribution and topological relationship of various types of branches of the fruit tree, realizing accurate and efficient automatic acquisition of the functional information of the branches of the fruit tree.
[0007] Combining branch type identification with knowledge in the field of fruit tree cultivation and management has achieved further mining of the three-dimensional structural data of fruit tree branches, enriched the semantic information of the three-dimensional structural data of fruit trees, and helped to better carry out fruit tree breeding and cultivation management using three-dimensional data.
[0008] Compared with the existing point cloud data to reconstruct the three-dimensional structure of fruit trees, the method of the present invention further realizes the accurate quantitative expression of the structure and function information of fruit tree branches. The present invention has better adaptability to fruit trees under standardized management, and achieves a stable recognition effect on the three-dimensional structure data of deciduous fruit tree branches from dormancy to before germination and flowering. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] Figure 1 This is a flow chart of a method for identifying fruit tree trunk types according to an embodiment of the present invention; Figure 2 This is a principle diagram of fruit tree trunk type identification according to an embodiment of the present invention; Figure 3 A schematic diagram of the three-dimensional structure of a fruit tree trunk according to an embodiment of the present invention Figure 4 A directed graph of a topological structure of a fruit tree branch according to an embodiment of the present invention; Figure 5 This is a schematic diagram of the identification effect of fruit tree fruiting branches, main trunks, main branches and sub-main branches according to an embodiment of the present invention. DETAILED DESCRIPTION
[0010] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0011] On the contrary, the present application covers any substitution, modification, equivalent method and scheme made on the essence and scope of the present application as defined by the claims. Further, in order to make the public have a better understanding of the present application, some specific details are described in detail in the detailed description of the present application below. Those skilled in the art can fully understand the present application without the description of these details.
[0012] The following is a detailed description of a method for identifying the type of branches and trunks of a three-dimensional structure of a fruit tree according to an embodiment of the present application. Figure 1 As shown, a method for identifying the type of branches and trunks of a fruit tree in three-dimensional structure comprises the following steps: Step 1: Use the 3D structure data of fruit trees to construct a directed graph expressing the topological structure of branches and trunks. The 3D structure data set of fruit trees includes the serial numbers of cylinders. Sn ,radius r ,length l , starting point start ( x,y,z ), direction vector direction ( x,y,z ) and adjacency P ; Create a directed graph G and add nodes (G.add_node( Sn, r, l, start ( x,y,z ) , direction ( x,y,z ) , node_type )), each node attribute stores the corresponding cylinder radius, length, starting point position, direction vector, and node type; according to P Add edges between nodes (G.add_edge()).
[0013] Step 2, identifying the nodes included in the result branch, including: finding the node with an out-degree of 0 in the directed graph G (G.node(out_degree(node)==0)) to obtain the end point list, querying the parent nodes of the node one by one from the end point (G.predecessors(node)), judging the out-degree of the parent node, and stopping if the out-degree is greater than 1 (fork point). The nodes included in the path from the end point to the fork point are the nodes included in the result branch, and the node type is updated to the result branch ( node_type=3 ) to complete the fruiting branch identification.
[0014] Step 3, identify the nodes included in the trunk, first find the node with in-degree equal to 0 in the directed graph G (G.node(in_degree(node)==0)) as the first node of the trunk; then find its child nodes (children = list(G.neighbors(current_node))), if there are several child nodes, select the non-fruit branch node G.nodes(node_type!=3) according to the node type, and calculate the combined similarity of the radius and direction vector of the parent node and each child node , where the radius similarity Using formula Calculation; Direction Similarity Using cosine similarity calculation, the values are linearly converted to the range of 0 to 1; a1 、a 2 are weights of different similarities. Further determine whether the child node belongs to the trunk based on the similarity: if the similarity of one child node is greater than the threshold, it is identified as a trunk node; if the similarity of more than two child nodes to the parent node is greater than the threshold, the node with the greatest similarity is selected as the trunk node; update the node type to the trunk ( node_type=0 ), and continue to search for the next trunk node with this node; if the similarity between all child nodes and the parent node is less than the threshold, it is determined that no child node belongs to the trunk, and the trunk node identification is completed.
[0015] Step 4, identify the order of each main branch and the nodes it contains, including: first find the node type is the trunk and the out-degree is greater than 1 (G.nodes[(node_type==0) and out_degree(node)>1)]); then find the child nodes of the node (children = list(G.neighbors(current_node))), and select the node whose node type is not the trunk and non-fruit branch (G.nodes[(node_type!=0) and (node_type!=3) ]) as the starting point of the main branch, Using Node start ( x,y,z ) calculates the distance between each child node and the root node, and sorts them in ascending order of distance; sorts by main branch, calculates the comprehensive similarity of parent and child node diameters and direction vectors from the starting point one by one, and identifies the main branch node and marks the main branch type (node_type==1) according to the condition that the similarity is greater than the threshold or the similarity is the largest and the node type is not a fruit branch; Step 5, identify the order of each sub-main branch and the nodes it contains, including: finding nodes whose node type is the main branch and whose out-degree is greater than 1 (G.nodes[(node_type==1) and out_degree(node)>1)]), finding the child nodes of the node; then select the node whose node type is not the main branch and non-fruit branch (G.nodes[(node_type!=1) and (node_type!=3) ]) as the starting point of the sub-main branch, and use the node in the start ( x,y,z ) is used to calculate the distance from each child node to the starting point of the main branch, and the distance is sorted in ascending order from small to large; starting from the starting point of the sub-main branch, according to the comprehensive similarity of the diameter and direction vector of the parent and child nodes, the sub-main branch nodes are identified and the sub-main branch types are marked (node_type==2) according to the conditions that the similarity is greater than the threshold or the similarity is the largest and the node type is not a fruit branch.
[0016] The following is an explanation using a specific embodiment as an example: After the three-dimensional surface reconstruction of the Y-shaped peach tree point cloud data of standardized cultivation management, a series of cylinders with different radii, lengths, starting positions, direction vectors and serial numbers of adjacent cylinders are obtained. Indicates the three-dimensional structure of the fruit tree, the effect is shown Figure 3 In order to realize the recognition of the three-dimensional structure of fruit trees, Figure 2 The principle of branch type recognition is to use graph theory algorithm and similarity algorithm to process the data of each cylinder in the three-dimensional structure of the fruit tree, and obtain the branch type Node_type information of each cylinder according to the discrimination conditions of different branch types, and finally obtain a data set containing the results of branch type recognition. .
[0017] Step 1: Use the three-dimensional structure data of the fruit tree to construct a directed graph G that expresses the topological structure of the branches and trunks. Each cylinder is a node in the directed graph. P The parent node information displayed adds the edges between each node; the visualization effect of the nodes and edges of the directed graph G is shown in Figure 4 ; Step 2, identify the nodes included in the result branch, select the nodes with out-degree 0 in the directed graph G, query the parent nodes of the nodes from the end point one by one, determine the out-degree of the parent node, if the out-degree is greater than 1, that is, the parent node has other forks, then stop, the nodes included in the path from the end point to the fork point are the nodes included in the result branch, and update the node ( node_type=3 ), the resulting branch node distribution is shown in Figure 5 The red part in Step 3, identify the nodes included in the trunk, find the node with in-degree equal to 0 in the directed graph G as the first parent node of the trunk, and find the child nodes; then calculate the combined similarity of the radius and direction vector of the parent node and each child node, and further determine whether the child node belongs to the trunk based on the similarity: if there is a child node with a similarity greater than the threshold, it is identified as a trunk node; if the similarity between more than two child nodes and the parent node is greater than the threshold, the node with the largest similarity is selected as the trunk node; continue to search for the next trunk node with this node; if the similarity between all child nodes and the parent node is less than the threshold, it is determined that no child node belongs to the trunk. The trunk node identification effect is shown in Figure 5 The blue part in Step 4: Identify the order of each main branch and the nodes it contains. First, find the nodes whose node type is trunk and whose out-degree is greater than 1. Then find the child nodes of the node and select the nodes whose node type is not trunk and non-fruit branch as the starting point of the main branch. Calculate the distance between each child node and the root node, and sort them in ascending order from small to large; sort by main branch, calculate the comprehensive similarity of parent and child node diameters and direction vectors from the starting point one by one, and identify the main branch node based on the condition that the similarity is greater than the threshold or the similarity is the largest and the node type is not a fruit branch. Figure 5 The green part in Step 5, identify the order of each sub-main branch and the nodes it contains, find the node type is the main branch and the node with out-degree greater than 1, find the child node, and then select the node type that is not the main branch or the fruit branch as the starting point of the sub-main branch, calculate the distance from each child node to the starting point of the main branch, and sort them in ascending order from small to large; start from the starting point of the sub-main branch, according to the comprehensive similarity of the diameter and direction vector of the parent and child nodes, and identify the sub-main branch nodes according to the conditions that the similarity is greater than the threshold or the similarity is the largest and the node type is not a fruit branch. Figure 5 The yellow part of the
[0018] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection scope of the present invention.
Claims
1. A method for identifying the three-dimensional structure of branches and trunks of fruit trees, characterized in that: The following steps are involved: Use the three-dimensional structure data of fruit trees to construct a directed graph expressing the topological structure of branches and trunks; Identify the nodes contained in the result branch; Identify the nodes that the trunk contains; Identify the order of each main branch and the nodes it contains; Identify the order of each sub-branch on the main branch and the nodes they contain.
2. A method for identifying the type of branches and trunks of three-dimensional structures of fruit trees according to claim 1, characterized in that: The fruit tree three-dimensional structure data is a type of data set that uses a set of cylinders to fit the surface of branches and trunks, including the radius, length, starting point position, direction vector and adjacency relationship of the cylinders.
3. A method for identifying the type of branches and trunks of three-dimensional structures of fruit trees according to claim 2, characterized in that: The method of constructing a directed graph expressing the branch topology structure includes: using a cylinder set as nodes of the directed graph, creating edges of the directed graph according to adjacency relationships; creating node attributes, storing the cylinder radius, length, starting point position, direction vector, and node type.
4. A method for identifying the type of branches and trunks of three-dimensional structures of fruit trees according to claim 1, characterized in that: The nodes included in the identification result branches include: starting from the node with an out-degree of 0 in the directed graph, that is, the end point, querying the path from the end point to the nearest first bifurcation point, wherein the first bifurcation point is a node with an out-degree greater than 1, the node adjacent to the bifurcation point is the starting point of the result branch, the nodes included in the path are the nodes included in the result branch, the node type is updated to the result branch, and the result branch identification is completed.
5. The method for identifying the type of branches and trunks of three-dimensional structures of fruit trees according to claim 1, characterized in that: The nodes included in the identification trunk include: taking the node with the in-degree of the directed graph being 0, that is, the root node, as the first parent node of the trunk, searching for child nodes, selecting nodes whose node type is not a fruit branch, using the radius and direction vector of the parent node and each child to calculate the similarity, and judging whether the child node belongs to the trunk according to the similarity: if there is a child node whose similarity is greater than a threshold, it is identified as a trunk node; if the similarity between two or more child nodes and the parent node is greater than the threshold, the node with the greatest similarity is selected as the trunk node; after updating the child node type to the trunk, continue to search and identify the next trunk node; if the similarity between all child nodes and the parent node is less than the threshold, it is judged that no child node belongs to the trunk, and the trunk node identification is completed.
6. A method for identifying the type of branches and trunks of three-dimensional structures of fruit trees according to claim 5, characterized in that: Calculate similarity using the radius and direction vectors of the parent node and each child ,include: ; in: Radius Similarity Using formula calculate; Direction similarity Using cosine similarity calculation, the values are linearly converted to the range of 0 to 1; a 1 、a 2 are weights of different similarities, satisfying ; is the parent node radius, is the radius of the child node.
7. A method for identifying the type of branches and trunks of three-dimensional structures of fruit trees according to claim 1, characterized in that: The identification and sorting of each main branch and the nodes contained therein include: searching for a node whose node type is a trunk and whose out-degree is greater than 1, searching for its child node with this node as the parent node, and then selecting a node whose node type is not a trunk and a non-fruit branch as the starting point of the main branch, calculating the distance from the starting point of each main branch to the root node, and sorting the distance in ascending order from small to large; identifying the main branch node according to the similarity of the diameter and direction vector of the parent and child nodes starting from the starting point of each main branch according to the sorting, and marking the main branch type according to the condition that the similarity is greater than a threshold or the similarity is the largest and the node type is not a fruit branch.
8. The method for identifying the three-dimensional structure of a fruit tree according to claim 1, characterized in that: The method for identifying and sorting sub-main branches on a main branch and the nodes they contain comprises: searching for a node whose node type is a main branch and whose out-degree is greater than 1 in each main branch, searching for its child nodes with this node as the parent node, and then selecting a node whose node type is not a main branch or a fruit-bearing branch as a sub-main branch starting point, calculating the distance from each child node to the starting point of the main branch, and sorting the nodes in ascending order of distance; identifying sub-main branch nodes according to the similarity of the diameter and direction vector of the parent and child nodes from the starting point of each sub-main branch according to the sorting, and marking the sub-main branch type according to the condition that the similarity is greater than a threshold or the similarity is the largest and the node type is not a fruit-bearing branch.
Citation Information
Patent Citations
Three-dimensional framework fast extraction method based on branch feathers
CN101763652A
Fruit three morphological structure three-dimensional (3D) reconstruction method based on multi-scale measurement data
CN102163342A
Light-weight three-dimensional tree model building method supporting skeleton personalization edition
CN103914869A
Point cloud data based single tree three-dimensional modeling and morphological parameter extracting method
CN103942838A
Tree branch modeling method and system based on vehicle-mounted laser scanning point cloud
CN110992473A