Ask Your Question

# Have we chosen a viable approach? Wood ring orientation recognition

Regards,

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: https://imgur.com/a/j7QQ1

edit retag close merge delete

## Comments

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.

( 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.

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

See the link at the end of the question.

( 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?

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

## 1 answer

Sort by ยป oldest newest most voted

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.

more

## Comments

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

( 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.

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

I think there must be some misunderstanding. This is not plywood, but solid structural timber (example: http://www.bischoff-schaefer.de/en/pr... ). 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

( 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?

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

That is correct.

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

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

( 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

( 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.

( 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

( 2018-02-13 07:16:13 -0500 )edit

Official site

GitHub

Wiki

Documentation

## Stats

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

Seen: 114 times

Last updated: Feb 12 '18