Skip to main content

TX-CNN: DETECTING TUBERCULOSIS IN CHEST X-RAY IMAGES USING CONVOLUTIONAL NEURAL NETWORK

In this paper, the authors propose a method to classify tuberculosis from chest X-ray images using Convolutional Neural Networks (CNN). They achieve a classification accuracy of 85.68%. They attribute the effectiveness of their approach to shuffle sampling with cross-validation while training the network.

Methodology

Convolutional Neural Network

This has been the ultimate tool for researchers and engineers for computer vision tasks. It has been widely used for many general purpose image and video related tasks. There are many great resources to learn about them. I will link a few of them at the end of this post.

In this paper, the authors study the famous AlexNet and GoogLeNet architectures in classifying tuberculosis images. A CNN model usually consists of convolutional layers, pooling layers and fully connected layers. Each layer is connected to the previous layers via kernels or filters. A CNN model learns parameters of the kernel to represent global and local features of the image.

Transfer Learning

This is a technique used to reuse features learned by a network on one domain/dataset in another domain/dataset. In domains such as the medical one, the number of labeled data available is generally less. So it is common in deep learning to train a network on a well known large dataset (like ImageNet) and then fine-tune the same model by retraining it on the medical data. This allows learning of basic features from the randomly initialized weights of the network during training on the large dataset and then later by fixing those features, learning medical related features during the fine tuning phase.

Since the chest X-ray images are not abundant to train large complex models, the authors chose this strategy to pretrain their networks on the ImageNet dataset and then fine-tune this model on the TB dataset. They also use shuffle-sampling and cross-validation while training on the chest X-ray images.

Shuffle Sampling

If you read this paper, you will see that the authors attribute the boost in accuracy for their models to this pre-training technique. Shuffle sampling is a data augmentation technique used to balance the categories of datasets. For very unbalanced datasets (some categories have much more data than others), it is very hard to learn a general classifier for all the categories. According to experiments in this paper, this technique increased training time by 2 hours for AlexNet and accuracy from 53.02% to 85.68%.
The steps followed for this technique are as follows
  1. Index every image in a category and take N as the number of images in the largest category.
  2. For each category, generate N unique numbers.
  3. For each category, calculate mod value of the N unique numbers with Nc (number of images in respective category)
  4. This mod value will give N numbers each of which is an index of an image in the respective category.
  5. Substitute this index with the corresponding image and the dataset expands to a size of N x Number of categories.
Please refer the image borrowed from the paper.

Learning Links



Comments

Popular Posts

Chest X-Ray Analysis of Tuberculosis by Deep Learning with Segmentation and Augmentation

In this paper , the authors explore the efficiency of lung segmentation, lossless and lossy data augmentation in  computer-aided diagnosis (CADx) of tuberculosis using deep convolutional neural networks applied to a small and not well-balanced Chest X-ray (CXR) dataset. Dataset Shenzhen Hospital (SH) dataset of CXR images was acquired from Shenzhen No. 3 People's Hospital in Shenzhen, China. It contains normal and abnormal CXR images with marks of tuberculosis. Methodology Based on previous literature, attempts to perform training for such small CXR datasets without any pre-processing failed to see good results. So the authors attempted segmenting the lung images before being inputted to the model. This gave demonstrated a more successful training and an increase in prediction accuracy. To perform lung segmentation, i.e. to cut the left and right lung fields from the lung parts in standard CXRs, manually prepared masks were used. The dataset was split into 8:1:1...

Ocean: Object-aware Anchor-free Tracking

The paper titled " Ocean: Object Aware Anchor Free Tracking " presents a novel approach to visual object tracking that is poised to outperform existing anchor-based approaches. The authors propose a unique anchor-free framework named Ocean, designed to address certain challenges in the current field of visual tracking. Introduction Visual object tracking is a crucial part of computer vision technology. The widely utilized anchor-based trackers have their limitations, which this paper attempts to address. The authors present the innovative Ocean framework, designed to transform the visual tracking field by improving adaptability and performance. The Problem with Anchor-Based Trackers Despite their wide usage, anchor-based trackers suffer from some notable drawbacks. They struggle with tracking objects experiencing drastic scale changes or those having high aspect ratios. The anchors, with their fixed scale and fixed ratios, can limit the flexibility of the trackers, making the...