Code interpreter生成无聊的APP:病理图像切割和提取

一、写在前面

机器学习100步不够分配了,所以开个新专栏,就叫做《Code interpreter生成无聊的APP》,旨在探索GPT-4官方插件Code interpreter的使用心路历程。

主要灵感来源:听户主说,她们在做病理组学图像标注和分割的时候,还得手动对标注区域进行提取和分割,费时费力废眼睛,严重不符合AI时代(躺平摸鱼)的生产方式。因此,我想能不能用Code interpreter帮我弄一个APP,一键搞定?

所以,干脆开一个专栏,记录我干这种无聊事情的前因后果。

二、任务和APP

(1)任务

先说说要干啥,有一张使用超高清扫描出来的病理图片,也就821M。

这种图片,PS也打不开。双击打开,电脑也要卡死。

Code interpreter生成无聊的APP:病理图像切割和提取_第1张图片

只能在一个叫做“ImageScope x64”的软件打开和标注。那么,任务就是需要在这图片上圈出病变区域,比如病变区域1以及病变区域2

Code interpreter生成无聊的APP:病理图像切割和提取_第2张图片

这个软件就会生成图层一图层二,其中图层一包含2个区域(红色多边形)图层二包含2个区域(黑色多边形)。该软件会保存为下面两个软件:

Code interpreter生成无聊的APP:病理图像切割和提取_第3张图片

TIFF就是原始图片,后面这个叫做XML注释文件,保存着我们所做的注释信息。

最终,要做的也简单,把以上四张图切割出来,用于后续建模啥的。

手工操作的后果,苦不堪言吧。

(2)APP

因此,弄了一个丑萌丑萌的APP:

Code interpreter生成无聊的APP:病理图像切割和提取_第4张图片

操作也简单粗暴:分别填入TIF文件、XML文件和选择结果输出的文件夹,点击提取。

这个过程耗时取决于你的CPU和内存,比如我的内存只有16g,花了18分钟,结果如下:

Code interpreter生成无聊的APP:病理图像切割和提取_第5张图片

 Code interpreter生成无聊的APP:病理图像切割和提取_第6张图片

 Code interpreter生成无聊的APP:病理图像切割和提取_第7张图片

 Code interpreter生成无聊的APP:病理图像切割和提取_第8张图片

哈哈,不要在意命名是反的。

重要的是分割出来了,而且每一个图片也是几百M的大小。

三、制作花絮

全程基于Code interpreter开发,晒出咒语和对线过程:

Code interpreter生成无聊的APP:病理图像切割和提取_第9张图片

Code interpreter生成无聊的APP:病理图像切割和提取_第10张图片

Code interpreter生成无聊的APP:病理图像切割和提取_第11张图片

Code interpreter生成无聊的APP:病理图像切割和提取_第12张图片

Code interpreter生成无聊的APP:病理图像切割和提取_第13张图片

Code interpreter生成无聊的APP:病理图像切割和提取_第14张图片

四、APP安装和运行

(1)安装依赖库

上述脚本使用了以下Python库:

os:Python标准库,无需额外安装。

numpy:用于数值计算和数组操作。

xml.etree.ElementTree:Python标准库,用于XML解析,无需额外安装。

PIL(从 Pillow 包导入):用于图像操作。

skimage.draw:来自 scikit-image 包,用于绘制多边形。

所以,需要安装的依赖库有:

numpy

Pillow

scikit-image

其中,numpy在安装Anaconda环境的时候自动配有的,因此难点在于Pillow和scikit-image,介绍下手动安装:

(a)下载依赖安装包

Pillow的下载地址:Pillow · PyPI

比如我的是,Python3.8,系统是Win10 64位,就选择:

Pillow-10.0.0-cp38-cp38-win_amd64.whl (2.5 MB view hashes)

同样,

scikit-image的下载地址:scikit-image · PyPI

Python3.8,系统是Win10 64位,就选择:

scikit_image-0.21.0-cp38-cp38-win_amd64.whl (22.7 MB view hashes)

上述两个文件记得存在哪里啊,要移动的。

(b)安装

打开Anaconda Powershell Prompt,弹出黑框:

Code interpreter生成无聊的APP:病理图像切割和提取_第15张图片

Code interpreter生成无聊的APP:病理图像切割和提取_第16张图片

 切换环境,比如我的是tf2.6:

conda activate tf2.6

Code interpreter生成无聊的APP:病理图像切割和提取_第17张图片

看到目前的工作路径了没:

C:\Users\Administrator>

把之前下载的

Pillow-10.0.0-cp38-cp38-win_amd64.whl 以及

scikit_image-0.21.0-cp38-cp38-win_amd64.whl

复制到C:\Users\Administrator中。

输入代码安装:

pip install Pillow-10.0.0-cp38-cp38-win_amd64.whl
pip install scikit_image-0.21.0-cp38-cp38-win_amd64.whl

回车,一般都能安装成功。要是翻车了,自行百度哈。

(2)运行脚本

把脚本丢到C:\Users\Administrator中:

Code interpreter生成无聊的APP:病理图像切割和提取_第18张图片

 打开Anaconda Powershell Prompt,弹出黑框,切换到tf2.6环境,输入:

Python JET-TIF-EXTRACT-2.py

回车,弹出APP界面。

Code interpreter生成无聊的APP:病理图像切割和提取_第19张图片

五、码源

见微信公众号

你可能感兴趣的:(Code,病理组学,图像切割,图像分割,chatgpt,图像识别)