Preliminary Steps in Bone Age Detection with Image Processing

Today, health studies in the field of artificial intelligence continue unabated. Now, the biggest assistants of health personnel in every field are artificial intelligence, algorithms, robotics working in health. In the age of growth, you have encountered to a child who has a height and growth disorder problem caused by genetic and growth disorders. In order to control short stature and growth impairment in these individuals, wrist x-ray film examinations are requested during the examination. So what do you think the doctors get from this X-ray film 👨‍⚕️? In these MRI images, skeletal maturation degree, called bone age, is calculated from the bones in the wrist. I can hear you say what the difference between bone and birth life calculated from the day of human birth can be 🗓️. The calculated age of an individual from the date of birth is the calendar age. Bone age is usually calculated from the left wrist X-ray, which occurs with the effect of hormones and nutrition 🦴

Properties of the wrist bone and heat map

The major mismatch between skeletal (bone) age and chronological calendar age occurs in children with obesity or beginning early puberty. If you want to examine the carpal bones on the human wrist with you and find out what age bone is 🔍

What is Bone Age?

The degree of maturation of the bones is expressed as bone age. In a child with normal bone maturation, bone age should be equal to the chronological age. However, sometimes it is normal to see some deviation between bone age and chronological age.

🚩 Hand Wrist Carpal Bones

The wrist bones, which are referred to as Ossa Carpi in medical language, consist of 29 bones, including 2 forearm bones (radius and ulna), 8 wrist bones (carpals), 5 comb bones (metacarpals) and 14 finger bones. We will deal with carpal bones, which are used as wrist bones for bone age determination. Let’s get to know these bones better 🔍

📍 In Figure 2, The X-ray images of the carpal bones in the wrist, which are examined from an anatomical point of view, are given below.

📍 In children aged 0-6 years, the most important criterion when examining X-ray images is the number and size of secondary ossification centers and wrist bones in the epiphysis region.

Epiphysis and Diaphyseal Region Representation in Bone

📍 As shown in Figure 5, when the structural analysis of the long bone is performed, the epiphysis is considered to be one of the two ends of the long bone. As shown in Figure 5, it is the middle section of the long bone, and there is Metaphysis in the area between the epiphysis and the diaphyseal. Metaphysics is the area where the center of secondary ossification is located. The proportion of the areas to be taken from these regions and the age of the human can be determined. In this article I show you how the different filters that are the preliminary stages of image processing work. I chose Matlab as the programming platform. In MATLAB’S GUI platform, the image is easily selected and filters are applied.

🚩 Application Of Background Inference

Background extraction is a method often used in image processing applications to capture and track moving objects on a fixed ground. Removing unwanted radiological signs in the images used is possible with background removal method. Inference is performed in the background using the defined structural element.

Structural Element Selection
Structural Element Selected In Background Inference

The background of the selected image is removed when the required operations are executed in the background.

Original Image
Removed Background Image
🚩 Threshold Detection

It is a method used to convert an input image into a binary image. Binary image is the definition of the image in black and white. The goal is to identify the object by reducing the noise. As the first stage, MRI is performed on the image Threshold. In this way, the detection of the object can be easily detected in non-colored black-and-white images. OpenCV ‘ s threshold function cv2.THRESH_BINARY  threshold type 127-255 with the view of the match is performed. değerlerinde eşikleme gerçekleştirilmektedir.

Original Image & Thresholded Image

🚩 Contrast Enhancement

Image enhancement techniques were examined one by one and the contrast enhancement method was chosen to provide the best results.

Contrast Stretching

It is the process of expanding the niece level range to include the entire niece range of the recording medium or display device.

Contrast Enhancement Matlab Code

Matches the density values in the grayscale image with the new values given by the imadjust method.

Image intonation as a result of imadjust method

Contrast is enhanced by using the histogram equalization feature with the histeq method.

Histogram Equalization Matlab Code

Histogram Equalization Result Image Toning

Adaptive histogram equalization is used so that contrast is limited with the adapthisteq method.

Adaptive Histogram Equalization Matlab Code

Adaptive Histogram Equalization Result Image Toning

🚩 Applying Mean and Median Filters

The mean filter is the simplest filter that can be created with the help of a generated kernel. For each pixel, the surrounding pixels are averaged.

Mean Filter Import Matlab Code

Image Filtered Image Result

The median filter is assigned to the pixel whose median values are in the given neighborhood.

Median Filter Import Matlab Code

Image Result With Median Filter Applied

🚩 Applying of Laplace and Sobel filters

For image sharpening, the two-dimensional laplace operator is applied with a 0.2 percent filter.

Laplace Filter Import Matlab Code

Image Result Of Laplace Filter Application

In another of the image sharpening methods, more details are revealed on the image with the Sobel operator.

Sobel Filter Import Matlab Code

Sobel Filter Applied Image Result

🚩 Canny Edge Detection

The Canny edge detection algorithm is a multi-step algorithm that can detect edges with noise simultaneously being suppressed. It contains the steps to reduce noise with Gauss filter, gradient calculation with the use of gradient operators, detection of edges with Threshold values. For example, let’s run a Canny locator with threshold values (20, 70) on an MRI image with an individual’s hand and look at the results.

Edge detection with Canny Edge Sensor

Canny Filter Import Matlab Code

Canny Filter Applied Image Result

🚩 Application of Erosion and Dilation Filters for Morphological Processes

The erosion filter erodes a grayscale or packaged binary image in accordance with the values of the given structural element. The dilation filter expands the worn areas of the worn image,making it easier to process. Let’s apply wear and expansion filters with the defined structural elements as follows.

Erosion and Dilation Filter Import Matlab Code

Erosion and dilation filters applied to the image result

The pre-processing stages of the image described above can be tested with different filters by changing the structural elements according to the projects to be applied. Thus, I have described the most commonly used pre-processing stages in the image. I wish codes on good days 💻


  1. Retrieved from
  2. Gur Emre Guraksın, Selcuk University, Bone Age Detection Using Artificial Intelligence Techniques, Institute of Science, January 2015.
  3. Expert assistant Nurdan Akkan, Comparison of Greulich-Pyle and Tanner-Whitehouse Methods Used in Bone Age Detection , I.U. Faculty of Dentistry Dental and Jaw Orthopedics Unit, 1982.
  4. Esra HASALTIN, Erkan BESDOK, Use of Artificial Neural Networks in Radiological Bone Age Detection from Hand – Wrist X-Ray Images, Erciyes University, Computer Engineering Department, Faculty of Engineering, Institute of Science.
  5. Neyzi, O., Ertugrul, T., Pediatrics (2nd Edition), p. 61-100, Nobel Medical Bookstores, Istanbul, 1993.
  6. Retrieved from
  7. Dr. Lecturer Member of Caner Ozcan, Karabük University, CME429 Introduction to Image Processing, Density Transforms and Histogram Processing.
  8. Retrieved from
  9. Sıddık Acıl, Image Processing with Python: Taken from Medium, Mean and Median Filters.
  10. Retrieved from
  11. Retrieved from
  12. Retrieved from
  13. Retrieved from

Leave a Reply