使用简单方法在图像中检测血细胞

本文介绍了一种解决血细胞检测问题的简单深度学习方法,将图像划分为块并用分类模型判断是否包含白细胞。通过创建边界框坐标并训练模型,能够有效地在图像中检测白细胞。数据集链接、训练过程和预测展示为实施步骤提供了清晰指导。
摘要由CSDN通过智能技术生成

对象检测问题的基础是数据的外观。现在,本文将介绍可用于解决对象检测问题的不同深度学习架构。让我们首先讨论我们将要处理的问题陈述。

目录

  1. 了解问题陈述:血细胞检测

  2. 数据集链接

  3. 解决对象检测问题的简单方法

  4. 实施简单方法的步骤

  • 加载数据集

  • 数据探索

  • 为简单方法准备数据集

  • 创建训练和验证集

  • 定义分类模型架构

  • 训练模型

  • 作出预测

结论

了解问题陈述血细胞检测

问题陈述

对于一组给定的血细胞图像,我们必须检测图像中的白细胞。

现在,这是来自数据集的示例图像。如你所见,你可以看到有一些红色阴影区域和蓝色或紫色区域。

b898f56d2fd8641452f4923c215e89b8.png

在上图中,红色阴影区域是红细胞(RBC),紫色阴影区域是白细胞(WBC),还有一些小的黑色突出部分是血小板。

正如你在此图像中看到的那样,我们有多个对象和多个类。

为简单起见,我们将其转换为单类单对象问题。这意味着我们将只考虑白细胞。

因此,只有一个类,即白细胞,而忽略其余的类。此外,我们将只保留具有单个白细胞的图像。

因此,具有多个白细胞的图像将从该数据集中删除。

以下是我们将从该数据集中选择图像的方法。

a5cba1ace666fa253aa11501679fc547.png

因此,我们删除了图像 2 和图像 5,因为图像 5 没有白细胞,而图像 2 有 2 个白细胞,其他图像保留在数据集中。同样,测试集也将只有一个白细胞。

现在,对于每个图像,我们在白细胞周围都有一个边界框。正如你在这张图片中看到的,我们的文件名为 1.jpg,这些是白细胞周围边界框的边界框坐标。

a27f3160a3c8670919af4ddcd27d3c3e.png

在下一节中,我们将介绍解决此对象检测问题的简单方法。

数据集链接

数据集链接:

https://courses.analyticsvidhya.com/courses/take/Applied-Computer-Vision-using-Deep-Learning/downloads/14005079-dataset-blood-cell-detection

解决对象检测问题的简单方法

在本节中,我们将讨论一种解决对象检测问题的简单方法。所以让我们首先了解任务,我们必须在血细胞图像中检测白细胞,可以看到下图。

400665431f9454bcd5b0f7f4c77ac863.png

现在,最简单的方法是将图像划分为多个块,因此对于此图像,将图像划分为四个块。

05c2eabf7684b0012eb5f0629819509d.png

我们对这些块中的每一个进行分类,因此第一个块没有白细胞,第二个块有一个白细胞,同样第三个和第四个没有任何白细胞。

9f47e0d62c7586fafe9118cdbd5920b2.png

我们已经熟悉分类过程以及如何构建分类算法。因此,我们可以轻松地将这些单独的块中的每一个分类为 yes 和 no,以表示白细胞。

现在,在下图中,具有白细胞的块(绿色框)可以表示为边界框,因此在这种情况下,我们将取这个块的坐标值,并将其返回为白细胞的边界框。

735bb519a6beb0ccd240fbf6a41d5cb4.png

现在为了实施这种方法,我们首先需要准备我们的训练数据。

现在可能有一个问题,为什么我们需要准备训练数据?我们已经有了这些图像和边界框。

我们的训练数据采用以下格式,其中我们有白细胞边界框和边界框坐标。

28867bff8b73065854545ef30b638cbb.png

现在,请注意我们有完整图像的这些边界框坐标,但我们将把这个图像分成四个块。我们需要所有这四个块的边界框坐标。下一个问题是我们如何做到这一点?

我们必须定义一个新的训练数据,我们有文件名,如下图所示。

我们有不同的块,对于每个块,我们有 Xmin、Xmax、Ymin 和 Ymax 值,它们表示这些块的坐标,最后,我们的目标变量是白细胞。图像中是否存在白细胞?

4ce85074c8f7629ebf807a4d4d7b9114.png

现在在这种情况下,它将成为一个简单的分类问题。因此,对于每个图像,我们将其划分为四个不同的块,并为每个块创建边界框坐标。

现在下一个问题是我们如何创建这些边界框坐标?这真的很简单。

44e6404678021bbe625c31df765bd8bc.png

考虑到我们有一个大小为 (640*480) 的图像。所以原点是(0,0)。上图有 x 轴和 y 轴,这里我们的坐标值为 (640, 480)。

现在,我们找出中点,它是 (320,240)。一旦我们有了这些值,我们就可以很容易地找出每个块的坐标。所以对于第一个块,我们的 Xmin 和 Ymin 将是 (0,0) ,而 Xmax, Ymax 将是 (320,240)。

650edc265fbe505eb53cb9099ed7242b.png

同样,我们可以在第二个、第三个和第四个块中找到它。一旦我们有了这些块中的每一个的坐标值或边界框值。下一个任务是确定此块中是否存在白细胞。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值