Ask Your Question

Have we chosen a viable approach? Wood ring orientation recognition

asked 2018-02-12 08:29:59 -0500

kinbor gravatar image


I need input on how we approached the problem. We've started this from a very inexperienced standpoint so all suggestions will be heavily considered. What we need is wood rings orientation recognition, and what we've did is through canny edge filtering, adaptive thresholding, finding contours and drawing them over original image (like magentic field for visual representation). I'm attaching an image how the final result looks like. Currently we're deciding on what method to use to actually determine the ring orientation (up, down, etc.). We've divided the cut board section into ten parts and averaging the slope of lines in each section. So for given example (0.88, 0.87, 0.15, 0.005, -0.12, -0.24, 0.16, 0.03) which would mostly (except for the right most part, which has some defects from `the saw blade) conform to upward orientation. Then we're thinking we would make a lot of pictures and put that through some classification algorithm. Would that be an ok approach or is there a method that we overlooked/disregarded? Example picture attached, you must note that in actual scenario, the area around the board would be clean so no artefacts would be present like in this picture. Link:

edit retag flag offensive close merge delete


Good task. I saw a lot of them in the wood. Could even post some images of my own, only in summer. It makes possible to determine the age of the tree. Manual counting is rather boring. IMO, with proper illumination the task is quite solvable. What do you mean by orientation? I so understand that you have an image of tree cut and need 2D reconstruction of concentric circles.

ya_ocv_user gravatar imageya_ocv_user ( 2018-02-12 10:01:39 -0500 )edit

Can you please post an example of the rings? What I would do is perform a threshold operation on the grayscale input image, making the rings black and white. Next I would count the number of rings along both dimensions, and take the higher ring count to be the final ring count. It would also tell you the orientation the wood, whether or not it needs to be rotated.

sjhalayka gravatar imagesjhalayka ( 2018-02-13 20:03:09 -0500 )edit

See the link at the end of the question.

ya_ocv_user gravatar imageya_ocv_user ( 2018-02-14 03:52:51 -0500 )edit

Correction: Do you have an example of the rings without all of that stuff drawn all over it?

sjhalayka gravatar imagesjhalayka ( 2018-02-14 18:29:00 -0500 )edit

1 answer

Sort by ยป oldest newest most voted

answered 2018-02-12 12:07:23 -0500

If you need just "magnetic field" orientation, you should divide the full circle not into 10, but into 50 - 100 sectors and apply what is called feature detection here. Feature detection (computer vision) There is a good description for corners. 2D Features framework (feature2d module). You need to modify it for short edges.

edit flag offensive delete link more


In wood industry, there is an requirement when you glue together wood boards into plys, that the rings should be facing in the opposite way (i'd imagine it's because there is more stability in this form), so we have to analyze the rings and determine in which they are facing. I'll look into your suggestion tomorrow, thank you very much.

Regards, Nejc

kinbor gravatar imagekinbor ( 2018-02-12 12:18:41 -0500 )edit

I have a sheet of plywood in front of me right now :) That requirement is about wood fibers. On good material rings should not be present at all. So far as I understand, fibers go along the trunk of the tree. On wood veneer they should go either horizontally or vertically. You can't distinguish up versus down, only up-down versus left-right. Your picture is wrong, not typical and fibers are not visible at all. Throw it out and find a better sample. Feature detection is the only approach possible for your task.

ya_ocv_user gravatar imageya_ocv_user ( 2018-02-12 14:26:39 -0500 )edit

I think there must be some misunderstanding. This is not plywood, but solid structural timber (example: ). Before this kind of product is pressed (you can see several layers of boards I've posted in the first link) there will be a camera which will analyze the position and orientation of wood rings, so the board can be turned around for maximum structural integrity. With the approach we've chosen, what I need to know is whether this is viable approach (opencv edge/contour detection, along with machine learning algorithm based on many boards where slope coefficients are calculated) or is there huge improvements on method we should use.

Regards, Nejc

kinbor gravatar imagekinbor ( 2018-02-12 15:13:38 -0500 )edit

For such tasks details may be crucial. Let's clarify the terms used. You have boards which were cut along the tree trunk (board plane goes along the trunk axis) and your first image presents the end face of the board. In this case you should have perfect, geometrically correct arcs on the image (I guess this company uses 1 sort wood :)). What do you mean by orientation? One board must have arc ends up, another - down?

ya_ocv_user gravatar imageya_ocv_user ( 2018-02-12 23:56:46 -0500 )edit

That is correct.

kinbor gravatar imagekinbor ( 2018-02-13 01:07:19 -0500 )edit

Your approach is quite rational. I don't see major flaws, but some improvements are visible.

ya_ocv_user gravatar imageya_ocv_user ( 2018-02-13 01:21:11 -0500 )edit

Ok, so the improvements would be what you stated in original answer? I've made this question because as I stated in the first post, we have very little experience in both computer vision and machine learning, so if we would've chosen a wrong approach it could mean months down the drain because of inexperience. If you have some other improvements in mind, please share them with me. Anyways, thank you for the input regardless.

Regards, Nejc

kinbor gravatar imagekinbor ( 2018-02-13 01:24:52 -0500 )edit

I think, this task has at least 2 different solutions with comparable quality. You can choose from them by circumstances(such as the quality of input image). If you want machine learning, feature detection is right for you. This pair will be "scientifically correct". Meanwhile, these images have good structure. Features are used for surfaces with a texture. Here, you have complete lines and even with analytical representation. Hough transform may be used to detect straight lines and also circles. I didn't try the latter yet, but plan to do it in the future.

ya_ocv_user gravatar imageya_ocv_user ( 2018-02-13 02:16:32 -0500 )edit

Thank you for feedback. I will not mark this as answered yet, as I'd like some more input but if everyone else remains quiet, I'll mark your answer as correct because I've been directed in promising direction. Regards, Nejc

kinbor gravatar imagekinbor ( 2018-02-13 07:16:13 -0500 )edit

Question Tools

1 follower


Asked: 2018-02-12 08:29:59 -0500

Seen: 268 times

Last updated: Feb 12 '18