Automated tuberculosis screening
View Patent ↗A method, system, and computer-readable medium for determining a number of mycobacteria in source image data of a sputum-smear sample are provided. First image data is extracted from the source image data of the sputum-smear sample. Binary image data is created from the extracted first image data. A plurality of groups of blobs is identified in the created binary image data. A distance between a pair of the identified plurality of groups of blobs is determined. If the distance is below a threshold value, the pair is combined as a single group of blobs. The determining is repeated for pairs of the identified plurality of groups of blobs, and the remaining groups of blobs are then classified.
1. A device comprising:
a processor; and
a computer-readable medium operably coupled to the processor, the computer-readable medium having instructions stored thereon that when executed by the processor cause the device to:
extract hue-saturation-intensity (HSI) parameters from source image data based on red-green-blue (RGB) parameters of the source image data to create first image data, wherein the source image data represents a stained image;
create binary image data from the first image data based at least in part on the HSI parameters;
define a plurality of groups of blobs in the created binary image data;
determine a distance between a pair of the defined plurality of groups of blobs, wherein the distance is calculated based on extreme X and Y coordinates associated with each pair of groups of blobs;
if the distance is below a threshold value, combine the pair into a single group of blobs;
repeat the determination and the combination for pairs of the defined plurality of groups of blobs; and
classify the plurality of groups of blobs that rain.
2. A non-transitory computer-readable medium having stored thereon computer-readable instructions that when executed by a computing device cause the computing device to:
extract hue-saturation-intensity (HSI) parameters from source image data based on red-green-blue (RGB) parameters of the source image data to create first image data herein the source image data represents a stained image;
create binary image data from the first image data based at least in part on the HSI parameters;
define a plurality of groups of blobs in the created binary image data;
determine a distance between a pair of the defined plurality of groups of blobs, wherein the distance is calculated based on extreme X and Y coordinates associated with each pair of groups of blobs;
if the distance is below a threshold value, combine the pair as a single group of blobs;
repeat the determination and the combination for pairs of the defined plurality of groups of blobs; and
classify the plurality of groups of blobs that remain.
3. A method to determine a number of mycobacteria in source image data of a sputum-smear sample, the method comprising:
extracting, by a computing device, hue-saturation-intensity (HSI) parameters from the source image data based on red-green-blue (RGB) parameters of the source image data to create first image data, wherein the source image data represents a stained image;
creating, by the computing device, binary image data from the first image data based at least in part on the HSI parameters;
defining, by the computing device, a plurality of groups of blobs in the created binary image data;
determining, by the computing device, a distance between a pair of the defined plurality of groups of blobs, wherein the distance is calculated based on extreme X and Y coordinates associated with each pair of groups of blobs;
if the distance is below a threshold value, combining, by the computing device, the pair as a single group of blobs;
repeating the determining and the combining, by the computing device, for pairs of the defined plurality of groups of blobs; and
classifying, by the computing device, the plurality of groups of blobs that remain.
4. The method of claim 3 , wherein defining the plurality of groups of blobs includes defining a first plurality of groups of blobs, the method further comprising defining a second plurality of groups of blobs by removing a blob from the first plurality of groups of blobs based on a size of the blob.
5. The method of claim 3 , further comprising determining a size of each of the plurality of groups of blobs.
6. The method of claim 5 , wherein the classifying of each group of blobs is based upon the size of the group of blobs.
7. The method of claim 6 , wherein the classifying of each group of blobs comprises:
classifying the group of blobs as a single bacillus if the group of blobs contains a single blob and the size of the group of blobs is within a first size range;
classifying the group of blobs as a beaded bacillus if the group of blobs contains more than a single blob and the size of the group of bias is within a second size range; and
classifying the group of blobs as a clump if the size of the group of blobs is within a third size range.
8. The method of claim 4 , wherein a group of blobs is removed from the plurality of groups of blobs if a size of the group of blobs is below a minimum threshold value.
9. The method of claim 3 , wherein each blob of the plurality of blobs is classified into a single bacillus, a beaded bacilli, or a clump of bacilli.
10. The method of claim 3 , wherein the source image data represents a sputum-smear sample stained by a Ziehl-Neelsen procedure.
11. The method of claim 3 , wherein the first image data is created by mapping pixels in a red-green-blue space to a hue-saturation-intensity space.
12. The method of claim 11 , wherein the binary image data is created by applying a minimum distance rule to classify pixels.
13. The method of claim 12 , wherein the minimum distance rule is applied to a plurality of sub-clusters formed from a cluster associated with a background of the extracted first image data.
14. The method of claim 3 , wherein the classifying comprises:
calculating a size of each of the plurality of groups of blobs;
classifying the group of blobs as a single bacillus if the group of blobs contains a single blob and the size of the group of blobs is within a first size range;
classifying the group of blobs as beaded bacillus if the group of blobs contains more than a single blob and the size of the group of blobs is within a second size range; and
classifying the group of blobs as a clump of bacilli if the size of the group of blobs is within a third size range.
15. The method of claim 3 , wherein the extracted first image data is created based on a single color.
16. The method of claim 15 , wherein the single color is green.
17. The method of claim 15 , wherein the binary image data is created using a threshold determined based on a maximum entropy principle.
18. The method of claim 15 , wherein the binary image data is created using a two-dimensional histogram derived from the extracted first image data and a blurred version of the extracted first image data.
19. The method of claim 18 , wherein the blurred version of the extracted first image data is calculated as
g
(
m
,
n
)
=
1
9
∑
i
=
-
1
1
∑
j
=
-
1
1
f
(
m
+
i
,
n
+
j
)
where f(m,n) is the extracted first image data of size M×N.
20. The method of claim 19 , wherein the two-dimensional histogram is a probability density function estimated as
p
(
k
,
l
)
=
1
MN
×
(
#
Pixels
:
f
(
m
,
n
)
=
k
,
g
(
m
,
n
)
=
l
)
.
21. The method of claim 20 , wherein the binary image data is created by selecting
[
t
*
,
s
*
]
T
=
Arg
max
(
t
,
s
)
[
H
B
a
(
t
,
s
)
+
H
0
a
(
t
,
s
)
]
,
where
H
B
a
(
t
,
s
)
=
1
1
-
a
ln
∑
i
=
0
t
∑
j
=
0
s
p
(
i
,
j
)
P
2
(
t
,
s
)
is an entropy associated with a background of the extracted first image data,
H
o
a
=
1
1
-
a
ln
∑
i
=
0
t
∑
j
=
0
s
p
(
i
,
j
)
P
4
(
t
,
s
)
is an entropy associated with an object of interest in the extracted first image data, P 2 (t,s) is a cumulative probability for the background, P 4 (t,s)=1−P 2 (t,s) is a cumulative probability for the object of interest, a is a value selected between 0 and 1, and p(i,j) is a probability density function.
22. The method of claim 3 , wherein defining the plurality of groups of blobs comprises identifying adjacency of pixels in a set of pixels in the binary image data.
23. The method of claim 22 , wherein the adjacency includes four-point adjacency, eight-point adjacency, or mixed adjacency.
24. The method of claim 22 , wherein defining the plurality of groups of blobs further comprises labeling each blob in the plurality of groups of blobs.
25. The method of claim 13 , wherein forming the plurality of sub-clusters from the cluster involves dividing the cluster.