图像处理方法、装置及计算机可读存储介质
技术领域
本申请实施例涉及互联网技术领域,涉及但不限于一种图像处理方法、装置及计算机可读存储介质。
背景技术
在图像处理领域,通常会需要对如病理图像或卫星采集的地理图像等待处理图像进行图像分割处理,以分割出待处理图像中的待分割对象(例如病理图像中的细胞或地理图像中的建筑物等)。近来,深度学习被广泛应用于图像检测与分割等任务,深度学习方法通常需要准确勾勒出待分割对象的边界,才能使模型得到更好的图像检测和分割结果。
相关技术中,通常是使用聚类方法将人工点标注扩展为像素级标注,并将聚类结果作为正样本标注,来训练图像分割模型对待处理图像进行分割。
但是,聚类的结果对图像分割模型的分割效果有较大的影响,通常为了确保聚类的准确性,图像分割的结果会比待处理图像中真实的待分割对象小,因此,相关技术中的聚类方法并不能对图像进行准确的分割。
发明内容
本申请实施例提供一种图像处理方法、装置及计算机可读存储介质,通过对待处理图像中的每一标注点进行迭代扩张,形成对应标注点的迭代扩张区域,如此,可以根据待处理图像中的待分割对象的大小的差异,调整迭代次数,从而准确的分割出待分割对象。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种图像处理方法,包括:
获取具有至少两个划分区域的待处理图像,每一所述划分区域中包括一个标注点;
对所述待处理图像中的每一所述标注点进行迭代扩张,得到对应标注点的迭代扩张区域;
分别确定所述迭代扩张区域与所述划分区域之间的第一损失结果、和所述迭代扩张区域与所述标注点之间的第二损失结果;
当所述第一损失结果和所述第二损失结果,满足迭代终止条件时,停止对对应标注点的迭代扩张;
将停止所述迭代扩张时得到的迭代扩张区域,确定为所述待处理图像中的待分割对象所在的区域。
本申请实施例提供一种图像处理方法,包括:
获取具有至少两个划分区域的病理图像,每一所述划分区域中包括一个标注点,每一所述标注点对应一细胞;
对所述病理图像中的每一所述标注点进行迭代扩张,得到对应标注点的迭代扩张区域;
分别确定所述迭代扩张区域与所述划分区域之间的第一损失结果、和所述迭代扩张区域与所述标注点之间的第二损失结果;
当所述第一损失结果和所述第二损失结果,满足迭代终止条件时,停止对所述标注点的迭代扩张;
将停止所述迭代扩张时得到的迭代扩张区域,确定为所述病理图像中的所述细胞所在的区域。
本申请实施例提供一种图像处理方法,包括:
响应于用户的点击操作,在终端的当前界面上显示所述点击操作对应的待处理图像;
响应于用户的触发操作,触发图像处理步骤,实现对所述待处理图像的图像处理过程,形成分割处理后的图像,并在所述当前界面上显示所述分割处理后的图像。
本申请实施例提供一种图像处理装置,包括:
获取模块,用于获取具有至少两个划分区域的待处理图像,每一所述划分区域中包括一个标注点;
迭代扩张模块,用于对所述待处理图像中的每一所述标注点进行迭代扩张,得到对应标注点的迭代扩张区域;
第一确定模块,用于分别确定所述迭代扩张区域与所述划分区域之间的第一损失结果、和所述迭代扩张区域与所述标注点之间的第二损失结果;
控制模块,用于当所述第一损失结果和所述第二损失结果,满足迭代终止条件时,停止对对应标注点的迭代扩张;
第二确定模块,用于将停止所述迭代扩张时得到的迭代扩张区域,确定为所述待处理图像中的待分割对象所在的区域。
本申请实施例提供一种图像处理设备,包括:
存储器,用于存储可执行指令;处理器,用于执行所述存储器中存储的可执行指令时,实现上述的方法。
本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现上述的方法。
本申请实施例具有以下有益效果:
获取具有至少两个划分区域的待处理图像,并对待处理图像中的每一标注点进行迭代扩张,形成对应标注点的迭代扩张区域,最后,根据迭代扩张区域分别与划分区域和标注点之间的第一损失结果和第二损失结果,确定迭代停止的时机。如此,可以根据待处理图像中的待分割对象的大小的差异,调整迭代次数,通过多次的迭代扩张,使得所形成的迭代扩张区域的大小更加接近待分割对象的大小,从而能够准确的分割出待分割对象。
附图说明
图1是相关技术中的图像处理方法的流程示意图;
图2A是本申请实施例提供的图像处理系统10的一个可选的架构示意图;
图2B是本申请实施例提供的图像处理系统10应用于区块链系统的一个可选的结构示意图;
图2C是本申请实施例提供的区块结构的一个可选的示意图;
图3是本申请实施例提供的服务器300的结构示意图;
图4是本申请实施例提供的图像处理方法的一个可选的流程示意图;
图5是本申请实施例提供的图像处理方法的一个可选的流程示意图;
图6是本申请实施例提供的图像处理方法的一个可选的流程示意图;
图7是本申请实施例提供的图像分割模型的一个可选的训练流程示意图;
图8是本申请实施例提供的产品侧应用场景示意图;
图9是本申请实施例提供的图像处理方法的一个可选的流程示意图;
图10是本申请实施例提供的人工点标注后的待处理图像;
图11是本申请实施例提供的voronoi划分图像的示意图;
图12是本申请实施例提供的细胞点标注迭代过程的示意图;
图13A至13C是使用本申请实施例的细胞分割模型对各种类型的病理图像进行处理的结果示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。除非另有定义,本申请实施例所使用的所有的技术和科学术语与属于本申请实施例的技术领域的技术人员通常理解的含义相同。本申请实施例所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
为了更好地理解本申请实施例中提供的图像处理方法,首先对相关技术中的图像处理方法进行说明,在以下说明相关技术方案和本申请方案的过程中,可以示例性的以病理图像作为待处理图像进行说明,以细胞作为待分割对象进行说明:
病理学是细胞形态的微观研究,能够补充原位分子信息。在病理学研究过程中,通常是将组织样品从体内取出,然后将其置于固定剂中制作成用于在显微镜下观察的病理切片,固定剂用于稳定组织以防止腐烂。为了在显微镜下观察,组织的不同成分用不同的染色剂染色,然后应用不同的染色技术以在显微镜下显示特定的组织成分。
通常病理切片中细胞是比较重要的判断依据,因此很多任务需要对细胞进行检测与分割。近来,深度学习被广泛应用于细胞检测与分割等任务,深度学习方法通常需要准确勾勒出细胞的边界,才能使模型得到更好的细胞检测和分割结果。这种像素级标注数据需要花费大量的时间和人力,因此对每个细胞只简单标注一个点成为一种可行的替代标注方案,可以很大程度减少标注的工作量。
相关技术中,通常使用聚类方法将人工点标注扩展为像素级标注,并利用点标注生成泰森多边形(voronoi)划分,然后将聚类结果作为正样本标注,将voronoi划分的边界作为负样本标注训练模型,通过训练的模型对细胞进行分割。如图1所示,是相关技术中的图像处理方法的流程示意图,方法包括以下步骤:
步骤S101,对病理图像进行人工点标注。
这里,可以使用画图工具或其他标注工具,通过人工方法对每一个细胞标注一个标注点。
步骤S102,对病理图像进行细胞聚类处理,得到聚类图像。
这里,通过聚类方法以人工标注点作为种子点,对病理图像进行聚类得到细胞聚类结果,作为细胞的像素级标注。
步骤S103,对人工点标注进行voronoi划分。
这里,通过对人工点标注进行voronoi划分,得到voronoi划分边界,以作为背景标注图像。
步骤S104,使用点标注作为细胞标注图像,voronoi划分边界作为背景标注图像,训练得到细胞分割模型。
相关技术中基于聚类方法的细胞分割方法,主要包含以下缺点:
1)使用细胞的聚类处理结果作为细胞的像素级标注,模型训练结果很大程度依赖聚类处理方法的准确性,模型训练结果对聚类处理参数比较敏感。
2)为了保证细胞聚类处理的正确性,细胞聚类处理的结果会比真正的细胞小,所以会导致最终的分割细胞结果比真实细胞小。
基于相关技术所存在的上述至少一个问题,本申请实施例提供一种图像处理方法,首先,获取具有至少两个划分区域的待处理图像,每一划分区域中包括一个标注点,每一标注点对应一待分割对象;然后,对待处理图像中的每一标注点进行迭代扩张,得到对应标注点的迭代扩张区域,并分别确定迭代扩张区域与划分区域之间的第一损失结果、和迭代扩张区域与标注点之间的第二损失结果;最后,当第一损失结果和第二损失结果,满足迭代终止条件时,停止对对应标注点的迭代扩张;将停止迭代扩张时得到的迭代扩张区域,确定为待处理图像中的待分割对象所在的区域。如此,由于可以根据待处理图像中的待分割对象的大小的差异,调整迭代次数,通过多次的迭代扩张,会使得所形成的迭代扩张区域的大小更加接近待分割对象的大小,从而能够准确的分割出待分割对象。另外,本申请实施例的方法还可以基于人工智能(AI,Artificial Int elligence)技术实现。
下面对人工智能技术进行简单介绍:
人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。本申请实施例中,可以基于人工智能技术实现图像分割处理,即采用人工智能技术确定待分割图像的分割线,从而实现对待分割图像的分割处理,或者,基于人工智能的图像分割模型训练,即采用人工智能技术实现对图像分割模型进行训练。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。例如,当采用人工智能技术实现本申请实施例的图像处理方法时,可以采用人工智能芯片来进行一系列的运算处理,得到待分割图像的分割线。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。其中,计算机视觉技术(CV,Computer Vision)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的方法涉及人工智能的图像分割处理技术,可以将人工智能技术中的计算机视觉技术与全卷积神经网络结合,来对待处理图像进行划分,形成至少两个划分区域,每一划分区域中包括一个标注点;并对待处理图像中的每一标注点进行迭代扩张,形成对应标注点的迭代扩张区域;最后,当迭代扩张区域分别与划分区域和标注点之间的第一损失结果和第二损失结果,满足迭代终止条件时,停止对标注点的迭代扩张;并根据停止迭代扩张时得到的迭代扩张区域,确定待处理图像中的待分割对象所在的区域,从而完成对待处理图像中的待分割对象的分割处理。在另一些实施例中,还可以基于人工智能技术,对分割处理后的图像进行进一步处理,例如,对分割处理后的图像进行颜色变换或进行着色等处理,以得到满足用户需求的处理图像。在又一些实施例中,还可以将人工智能技术与图像分割模型训练技术结合,实现基于人工智能的图像分割模型训练过程。对于上述基于人工智能的处理方式,将在后续实施例中进行说明。
下面说明本申请实施例提供的图像处理设备的示例性应用,本申请实施例提供的图像处理设备可以实施为笔记本电脑,平板电脑,台式计算机,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)、智能机器人等任意具有屏幕显示功能的终端,也可以实施为服务器。下面,将说明图像处理设备实施为服务器时的示例性应用。
参见图2A,图2A是本申请实施例提供的图像处理系统10的一个可选的架构示意图。为支撑一个图像处理应用,以实现对待处理图像进行分割处理以及分割之后的图像处理步骤,图像处理系统10中包括终端100、网络200和服务器300。其中,终端100上运行有图像处理应用,在实现本申请实施例的图像处理方法时,终端100的采集单元采集待处理图像;并获取用户人工对待处理图像进行的标注,得到至少两个标注点,每一标注点对应一待分割对象,并将具有至少两个标注点的待处理图像通过网络200发送给服务器300;服务器300对待处理图像进行划分,形成至少两个划分区域;并对待处理图像中的每一标注点进行迭代扩张,形成对应标注点的迭代扩张区域;当迭代扩张区域分别与划分区域和标注点之间的第一损失结果和第二损失结果,满足迭代终止条件时,停止对标注点的迭代扩张;同时,将停止迭代扩张时得到的迭代扩张区域,确定为待处理图像中的待分割对象所在的区域。最后,按照所确定出的待分割对象所在的区域,对待处理图像进行分割处理,得到分割处理后的图像(即分割图像),并将分割图像通过网络200返回给终端100;终端100可以在当前界面100-1上显示分割图像。或者,在其他实施例中,服务器300还可以对分割图像进行进一步处理,例如对分割图像进行颜色变换,即对待分割对象所在的区域进行颜色变换,然后将颜色变换后的图像通过网络200发送给终端100,以使得终端100可以在当前界面100-1上显示颜色变换后的图像。
在一些实施例中,服务器300在形成分割图像之后,还可以将分割图像通过网络200反馈给终端100;终端100在获取到分割图像之后,在当前界面100-1上可以同时显示待处理图像和该分割图像以供用户查看和操作,也可以仅显示分割图像。
在一些实施例中,图像处理系统10中还可以包括终端101,终端101可以与终端100是同一终端,也可以是不同终端。请继续参照图2A,其中,终端100用于向服务器提供待处理图像,终端101用于在当前界面101-1上显示分割图像。举例来说,待处理图像可以医院的病理图像,终端100是医学影像设备,用于采集患者的病理图像,在终端100采集到该病理图像之后,将病理图像发送给服务器300进行分割处理,得到分割图像;服务器在得到分割图像之后,将分割图像发送至医生的电脑上,即发送至终端101,以使得医生可以在在终端101上查看分割图像,并根据分割图像进行病理分析。
本申请实施例涉及的图像处理系统10也可以是区块链系统的分布式系统201,参见图2B,图2B是本申请实施例提供的图像处理系统10应用于区块链系统的一个可选的结构示意图,其中,所述分布式系统201可以是由多个节点202(接入网络中的任意形式的计算设备,如服务器、用户终端)和客户端203形成的分布式节点,节点之间形成组成的点对点(P2P,Peer To Peer)网络,P2P协议是一个运行在传输控制协议(TCP,TransmissionControl Protocol)协议之上的应用层协议。在分布式系统中,任何机器如服务器、终端都可以加入而成为节点,节点包括硬件层、中间层、操作系统层和应用层。
需要说明的是,在分布式系统201中,每一节点202对应一终端100,在每一终端100上,会收集患者的病理图像以及病理图像对应的分割处理后的图像,并且,基于医生对病理图像的分析,终端100还会收集患者病理图像对应的病症分析,即将病理图像与病症分析之间的对应关系收集起来,存储至区块链系统中。通过收集这些病理图像和病症分析之间的对应关系,并对这些数据进行上链存储,能够便于在后续针对同样的病理图像,可以根据区块链上存储的数据进行快速的病理分析,或者,能够保证对同一患者的身体状况进行实时的准确记录,便于尽早的发现身体健康问题且能够为患者的疾病治疗提供准确的临床依据。
本申请实施例中,在该区块链系统中,每一终端100上的待处理图像和分割处理后的图像均会被记录下来,且不可更改,并且,随着终端100进一步接收到关于同一患者或者关于同一类病情患者的待处理图像和分割处理后的图像,因此会存在数据的更新,那么,区块链中所存储的数据也会发生更新,因此,能够及时地对待处理图像和分割处理后的图像进行更新。
参见图2B示出的区块链系统中各节点的功能,下面对区块链系统中各节点涉及的功能进行详细介绍:
1)路由,节点具有的基本功能,用于支持节点之间的通信。节点除具有路由功能外,还可以具有以下功能:
2)应用,用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链系统中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。例如,应用实现的业务包括:2.1)钱包,用于提供进行电子货币的交易的功能,包括发起交易(即,将当前交易的交易记录发送给区块链系统中的其他节点,其他节点验证成功后,作为承认交易有效的响应,将交易的记录数据存入区块链的临时区块中;当然,钱包还支持查询电子货币地址中剩余的电子货币。2.2)共享账本,用于提供账目数据的存储、查询和修改等操作的功能,将对账目数据的操作的记录数据发送到区块链系统中的其他节点,其他节点验证有效后,作为承认账目数据有效的响应,将记录数据存入临时区块中,还可以向发起操作的节点发送确认。2.3)智能合约,计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易,例如查询买家所购买商品的物流状态,在买家签收货物后将买家的电子货币转移到商户的地址;当然,智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。
3)区块链,包括一系列按照产生的先后时间顺序相互接续的区块(Block),新区块一旦加入到区块链中就不会再被移除,区块中记录了区块链系统中节点提交的记录数据。
4)共识(Consensus),是区块链网络中的一个过程,用于在涉及的多个节点之间对区块中的交易达成一致,达成一致的区块将被追加到区块链的尾部,实现共识的机制包括工作量证明(PoW,Proof of Work)、权益证明(PoS,Pr oof of Stake)、股份授权证明(DPoS,Delegated Proof-of-Stake)、消逝时间量证明(PoET,Proof of Elapsed Time)等。
参见图2C,图2C是本申请实施例提供的区块结构(Block Structure)的一个可选的示意图,每个区块中包括本区块存储交易记录的哈希值(本区块的哈希值)、以及前一区块的哈希值,各区块通过哈希值连接形成区块链。另外,区块中还可以包括有区块生成时的时间戳等信息。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
参见图3,图3是本申请实施例提供的服务器300的结构示意图,图3所示的服务器300包括:至少一个处理器310、存储器350、至少一个网络接口320和用户接口330。服务器300中的各个组件通过总线系统340耦合在一起。可理解,总线系统340用于实现这些组件之间的连接通信。总线系统340除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图3中将各种总线都标为总线系统340。
处理器310可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口330包括使得能够呈现媒体内容的一个或多个输出装置331,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口330还包括一个或多个输入装置332,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器350可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器350可选地包括在物理位置上远离处理器310的一个或多个存储设备。存储器350包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器350旨在包括任意适合类型的存储器。在一些实施例中,存储器350能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统351,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块352,用于经由一个或多个(有线或无线)网络接口320到达其他计算设备,示例性的网络接口320包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
输入处理模块353,用于对一个或多个来自一个或多个输入装置332之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本申请实施例提供的装置可以采用软件方式实现,图3示出了存储在存储器350中的一种图像处理装置354,该图像处理装置354可以是服务器300中的图像处理装置,其可以是程序和插件等形式的软件,包括以下软件模块:获取模块3541、迭代扩张模块3542、第一确定模块3543、控制模块3544和第二确定模块3545,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
在另一些实施例中,本申请实施例提供的装置可以采用硬件方式实现,作为示例,本申请实施例提供的装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的图像处理方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specif ic Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic De vice)、复杂可编程逻辑器件(CPLD,ComplexProgrammable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable GateArray)或其他电子元件。
下面将结合本申请实施例提供的服务器300的示例性应用和实施,说明本申请实施例提供的图像处理方法。参见图4,图4是本申请实施例提供的图像处理方法的一个可选的流程示意图,将结合图4示出的步骤进行说明。
步骤S401,获取具有至少两个划分区域的待处理图像。
这里,待处理图像中具有待分割对象,待分割对象形成待处理图像的前景图像,待处理图像中除了待分割对象之外的其他部分,形成待处理图像的背景图像,前景图像与背景图像之间具有较大的差别,即前景图像与背景图像的区别较大。例如,可以是具有较大的颜色差别,且前景图像的颜色近似或一致,背景图像的颜色近似或一致;或者,可以是前景图像与背景图像之间具有较大的亮度差别;或者,前景图像中具有多个待分割对象,待分割对象之间具有相似或相同的形状,或具有相近的尺寸大小,而背景图像中的对象之间具有不规则的形状,或者背景图像中的对象之间的形状和尺寸大小差异较大。
待处理图像中包括至少两个标注点,标注点是用户通过人工标注形成的,每一标注点对应一待分割对象。标注点标注出待分割对象所在的位置,标注点位于待分割对象的中心位置,或者与待分割对象的中心位置之间的距离小于阈值。
本申请实施例中,可以采用画图工具或其他标注工具,通过人工方式对每一个待分割对象标注一个标记点,以预先标注出待分割对象的大概位置,然后,基于预先标注的标注点,确定待分割对象所在的区域。
每一划分区域中包括一个标注点,在一些实施例中,可以对待处理图像进行划分,形成至少两个划分区域。这里,对待处理图像进行划分,可以采用vo ronoi划分方式,对待处理图像进行划分,形成至少两个划分区域,每一划分区域中包括一个标注点,因此划分区域之间互相连接形成上述待处理图像。
本申请实施例中,每一划分区域中的标注点对应的待分割对象所在的区域面积小于该划分区域的面积,也就是说,每一划分区域中包括一个待分割对象,划分区域是待分割对象的极限面积区域。
本申请实施例中,通过划分得到划分区域,能够在后续迭代扩张以确定待分割对象所在区域的时候,对迭代的过程和迭代的终止条件进行约束,避免扩张得到的待分割对象所在的区域面积大于实际待分割对象所在的区域面积。
步骤S402,对待处理图像中的每一标注点进行迭代扩张,得到对应标注点的迭代扩张区域。
这里,迭代扩张是指以标注点为扩张中心,循环扩张标注点所在的区域的面积。本申请实施例中,在每一次迭代扩张的过程中,扩张的尺寸参数可以为预设的固定值,也可以在每次迭代扩张之前确定迭代扩张的尺寸参数,然后按照所确定出的尺寸参数,对标注点进行迭代扩张,形成标注点的迭代扩张区域。
需要说明的是,在对标注点的第一次迭代扩张过程中,是以标注点为扩张中心,以迭代扩张的尺寸参数向外扩张一次,形成包裹有标注点的迭代扩张区域;在第二次迭代扩张过程中,则是以第一次迭代扩张后形成的迭代扩张区域为扩张的起始形状,按照迭代扩张的尺寸参数,将第一次迭代扩张后形成的迭代扩张区域的边界向外扩张一次;即,在第N次迭代扩张过程中,是以第N-1次迭代扩张后形成的迭代扩张区域为本次扩张的起始形状,按照迭代扩张的尺寸参数,将第N-1次迭代扩张后形成的迭代扩张区域的边界向外扩张一次,其中N大于或等于1。
步骤S403,分别确定迭代扩张区域与划分区域之间的第一损失结果、和迭代扩张区域与标注点之间的第二损失结果。
这里,可以通过预设损失模型,根据迭代扩张区域的边界、划分区域的边界和标注点的位置,确定迭代扩张区域与划分区域之间的第一损失结果、和迭代扩张区域与标注点之间的第二损失结果,这里第一损失结果和第二损失结果用于表征迭代扩张区域的边界与划分区域的边界之间的第一距离、和迭代扩张区域的边界与标注点的位置之间的第一距离与预设第一距离和预设第二距离之间的相似度。在确定出第一距离和第二距离之后,根据第一距离和第二距离分别与预设第一距离和预设第二距离之间的相似度,确定上述第一损失结果和第二损失结果。
步骤S404,当第一损失结果和第二损失结果,满足迭代终止条件时,停止对对应标注点的迭代扩张。
迭代终止条件用于判断当前的迭代扩张区域的边界是否接近实际的待分割对象所在的区域的边界。当当前的迭代扩张区域的边界与实际的待分割对象所在的区域的边界之间的差值小于阈值时,表明当前的迭代扩张区域可以用于近似表征或者可以表征待分割对象所在的区域的边界,因此,停止对标注点的迭代扩张,以避免再次迭代扩张造成迭代扩张区域的尺寸大小大于待分割对象所在区域的尺寸大小,而造成迭代扩张的结果与实际待分割对象所在区域的实际结果之间的误差较大。
步骤S405,将停止迭代扩张时得到的迭代扩张区域,确定为待处理图像中的待分割对象所在的区域。
这里,在确定出需要停止迭代扩张时,将停止迭代扩张时得到的迭代扩张区域,确定为待分割对象所在的区域,即确定出待处理图像的分割区域。
在一些实施例中,在确定出最终的迭代扩张区域,即确定出待分割对象所在的区域之后,可以根据迭代扩张区域对待处理图像进行分割,以分割出待处理图像中的待分割对象和除了待分割对象之外的其他图像,也就是说,可以将待处理图像的前景图像和背景图像分别分割出来,以用于后续的其他图像处理或者图像分析过程。
本申请实施例提供的图像处理方法,获取具有至少两个划分区域的待处理图像,并对待处理图像中的每一标注点进行迭代扩张,形成对应标注点的迭代扩张区域,最后,根据迭代扩张区域分别与划分区域和标注点之间的第一损失结果和第二损失结果,确定迭代停止的时机。如此,可以根据待处理图像中的待分割对象的大小的差异,调整迭代次数,通过多次的迭代扩张,使得所形成的迭代扩张区域的大小更加接近待分割对象的大小,从而能够准确的分割出待分割对象。
在一些实施例中,待处理图像可以具有前景图像和背景图像,且前景图像与背景图像分明,前景图像与背景图像的差异较大,便于区分。例如,待处理图像中的前景图像与背景图像的颜色差异较大,从颜色上容易区分,且前景图像具有均匀的形状,或者前景图像为大量的形状相近的对象。举例来说,待处理图像可以为病理图像,则对应地,待分割对象为细胞,或者,待处理图像可以为卫星采集的地理图像,则对应地,待分割对象为房屋或地区。
图像处理系统包括终端和服务器,其中,终端可以是任意一种类型的终端,例如,终端可以是具有图像采集功能的手机或摄像设备等,也可以是医学影像设备。终端获取待处理图像,并将待处理图像发送给服务器进行分割处理,图5是本申请实施例提供的图像处理方法的一个可选的流程示意图,如图5所示,方法包括以下步骤:
步骤S501,终端采集图像,得到待处理图像。
这里,终端上可以具有图像采集设备,通过图像采集设备采集图像,或者,终端也可以在网络上下载图像,或者,终端也可以在特定数据集中获取图像。
步骤S502,终端获取用户的标注操作,形成待处理图像上的至少两个标注点。
当终端采集到待处理图像之后,可以将待处理图像显示于当前界面上,用于通过画图工具或其他标注工具,对每一个待分割对象标注一个标记点,以预先标注出待分割对象的大概位置,形成待处理图像上的至少两个标注点。
步骤S503,终端向服务器发送图像处理请求,图像处理请求中包括具有至少两个标注点的待处理图像。
步骤S504,服务器对待处理图像进行划分,形成至少两个划分区域,每一划分区域中包括一个所述标注点。
这里,步骤S504可以通过以下步骤实现:
步骤S5041,根据至少两个标注点,对待处理图像进行划分,形成至少两个具有连续多边形形状的划分区域。可以将每两个标注点连接成线段,并将每条线段的垂直平分线组成的连续多边形,确定为划分得到的划分区域。
步骤S505,服务器对待处理图像中的每一标注点进行迭代扩张,形成对应标注点的迭代扩张区域。
步骤S506,服务器确定迭代扩张区域与划分区域和标注点之间的损失结果。其中,迭代扩张区域与划分区域和所述标注点之间的损失结果,包括迭代扩张区域与划分区域之间的第一损失结果、和迭代扩张区域与标注点之间的第二损失结果。
步骤S507,判断损失结果是否满足迭代终止条件。
当判断结果为是时,执行步骤S508;当判断结果为否时,返回继续执行步骤S505。
步骤S508,服务器停止对标注点的迭代扩张。
步骤S509,服务器将停止迭代扩张时得到的迭代扩张区域,确定为待处理图像中的待分割对象所在的区域。
在一些实施例中,当待处理图像为病理图像,待分割对象为细胞时,则步骤S509可以是将停止迭代扩张时得到的迭代扩张区域,确定为病理图像中的细胞所在的区域。
步骤S510,服务器根据停止迭代扩张时得到的迭代扩张区域,对待处理图像进行分割,形成分割后的图像。例如,当待分割对象为细胞时,可以从待处理图像上分割出细胞。
步骤S511,服务器将分割后的图像发送给终端。
步骤S512,终端在当前界面上显示分割后的图像。
本申请实施例提供的图像处理方法,通过作为终端的医学影像设备对病理图像进行采集,并将所采集的病理图像发送给服务器进行处理,从而得到细胞的分割图像,实现对病理图像的图像分割处理。由于细胞的颜色相同,且形状相近,因此,采用本申请实施例的迭代扩张过程,能够对病理图像中的细胞进行准确的分割。并且,通过多次的迭代扩张,使得所形成的迭代扩张区域的大小更加接近细胞的大小,从而能够准确的分割出病理图像中的细胞。
在一些实施例中,提供一种图像处理方法,包括以下步骤:
步骤S11,响应于用户的点击操作,在终端的当前界面上显示所述点击操作对应的待处理图像。
这里,用户的点击操作可以是用户在终端当前界面上的选择操作,用户可以在终端上选择要进行图像处理的待处理图像。终端在接收到用户的点击操作之后,将所选择的待处理图像显示于当前界面上。
步骤S12,响应于用户的触发操作,触发图像处理步骤,实现对待处理图像的图像处理过程,形成分割处理后的图像,并在所述当前界面上显示所述分割处理后的图像。
这里,触发操作可以是触发终端进行图像处理的操作,当用户选择待处理图像之后,在终端的当前界面上可以显示有选择按钮,该选择按钮用于提醒用户是否选择开始进行图像处理,即提醒用户是否进行图像分割。当用户选择开始按钮时,则对应执行该触发操作,对应地,终端触发图像处理步骤,将待处理图像发送给服务器,以使得服务器对待处理图像进行分割处理,形成分割处理后的图像,并将分割处理后的图像发送给终端,以在终端的当前界面上显示分割处理后的图像。
图6是本申请实施例提供的图像处理方法的一个可选的流程示意图,如图6所示,步骤S402可以通过以下步骤实现:
步骤S601,采用迭代扩张参数,对待处理图像中的每一标注点进行迭代扩张,得到对应标注点的迭代扩张区域。
这里,迭代扩张参数是用于进行迭代扩张的尺寸参数。在一些实施例中,迭代扩张参数包括扩张距离,扩张距离是指每一次迭代扩张时向外扩张的直径大小,在进行迭代扩张过程中,每一次扩张的扩张距离可以相同,也可以不同;每一次扩张的扩张距离可以是预设的固定值,也可以是根据当前的迭代扩张区域进行确定的随机值。
在一些实施例中,步骤S601可以通过以下步骤实现:步骤S6011,以每一标注点为中心,以扩张距离为半径,对待处理图像中的每一标注点进行迭代扩张,形成对应标注点的迭代扩张区域。
请继续参照图6,在一些实施例中,步骤S402还可以通过以下步骤实现:
步骤S602,以每一标注点为中心、以预设扩张距离为半径,对待处理图像中的每一标注点进行初次扩张,形成具有至少两个扩张区域的前景区域。
这里,初次扩张是指对标注点的扩张,由于在初次扩张时,并不存在具有一定面积的扩张区域,因此,可以直接根据标注点和预设扩张距离形成一圆形,该圆形即为标注点的扩张区域。在对标注点进行初次扩张之后,每一标注点对应一圆形,多个圆形共同形成前景区域,其中,前景区域是指由扩张区域所形成的区域,前景区域中包括待处理图像的待分割对象所在的区域,且前景区域中不包括待处理图像的背景图像所在的区域。
步骤S603,以每一标注点为中心、以预设扩张距离为半径,对前景区域中的每一扩张区域进行至少一次迭代扩张,得到对应标注点的迭代扩张区域。
这里,在初次扩张之后,形成初次扩张的扩张区域,在后续的迭代扩张过程中,可以以该扩张区域的边界为扩张起始位置,对扩张区域进行至少一次迭代扩张。
请继续参照图6,在一些实施例中,方法还包括:
步骤S604,根据第N次迭代扩张的第一损失结果和第二损失结果,确定第N+1次迭代扩张的迭代扩张参数。
在一些实施例中,步骤S604可以通过以下步骤实现:
步骤S6041,当第N次迭代扩张的第一损失结果与第二损失结果之和大于阈值时,获取每一标注点在第N次迭代扩张的迭代扩张区域内的像素点。
这里,当第N次迭代扩张的第一损失结果与第二损失结果之和大于阈值时,表明第N次迭代扩张得到的迭代扩张区域与实际的待分割图像所在的区域之间的差别较大,因此需要继续进行迭代扩张。则可以继续确定出下一次迭代扩张的迭代扩张参数。本申请实施例中,迭代扩张参数可以根据迭代扩张区域内的像素点的数量来确定。
步骤S6042,确定与每一标注点相邻的迭代扩张区域内的像素点之间的像素距离。像素距离是指像素点的数量。
步骤S6043,根据像素距离,确定用于进行所述第N+1次迭代扩张的扩张距离,得到迭代扩张参数。
这里,可以确定出距离标注点最近的迭代扩张区域为目标迭代扩张区域,并将目标迭代扩张区域边界上的像素点与标注点之间的像素点距离,确定为第N+1次迭代扩张的迭代扩张参数。
请继续参照图6,步骤S404可以通过以下步骤实现:
步骤S605,获取第一损失结果对应的第一损失值、和第二损失结果对应的第二损失值。
步骤S606,确定第一损失值和第二损失值之间的损失值之和。
步骤S607,判断损失值之和是否小于阈值。
当判断结果为是时,执行步骤S608;当判断结果为否时,返回继续执行步骤S601或步骤S603。
步骤S608,停止对标注点的迭代扩张。
在一些实施例中,可以通过图像分割模型对待处理图像进行处理,得到待处理图像中的待分割对象所在的区域。其中,图像分割模型包括全卷积神经网络,全卷积神经网络用于对样本图像进行图像分割处理。在一些实施例中,图像分割模型还包括迭代扩张模型,迭代扩张模型用于根据迭代扩张参数对样本图像中的样本标注点进行迭代扩张。
图7是本申请实施例提供的图像分割模型的一个可选的训练流程示意图,如图7所示,训练方法包括以下步骤:
步骤S701,对具有至少两个样本标注点的样本图像进行划分,形成具有至少两个样本划分区域的背景区域。背景区域是指样本划分区域所形成的区域。
步骤S702,以每一样本标注点为中心、以预设扩张距离为半径,对样本图像中的每一样本标注点进行扩张,形成具有至少两个样本扩张区域的前景区域。
前景区域是指样本扩张区域所形成的区域,前景区域中包括样本图像的待分割对象所在的区域,且前景区域中不包括样本图像的背景图像所在的区域。
步骤S703,将前景区域作为正样本,输入至全卷积神经网络中进行图像分割处理,得到分割后的处理图像。
步骤S704,将处理图像输入至预设损失模型中,得到损失结果。
在一些实施例中,步骤S704可以通过以下步骤实现:
步骤S7041,通过预设损失模型,确定样本扩张区域与样本划分区域之间的第一样本损失值。步骤S7042,通过预设损失模型,确定样本扩张区域与样本标注点之间的第二样本损失值。步骤S7043,将第一样本损失值与第二样本损失值之和,确定为损失结果。
这里,样本扩张区域与样本划分区域之间的第一样本损失值,是指样本扩张区域的边界与样本划分区域的边界之间的第一距离差;样本扩张区域与样本标注点之间的第二样本损失值,是指样本扩张区域的边界与样本标注点之间的第二距离差。当第一距离差与第二距离差均均满足一定的条件时,则表明所形成的样本扩张区域与实际的待分割对象所在的区域之间的相似度较高。
步骤S705,根据损失结果确定图像分割模型的迭代扩张参数。
在一些实施例中,步骤S705可以通过以下步骤实现:
步骤S7051,当损失结果大于阈值时,获取每一样本标注点的样本扩张区域内的像素点。步骤S7052,确定每一样本标注点与相邻样本扩张区域内的像素点之间的像素距离。步骤S7053,根据像素距离,确定图像分割模型的迭代扩张参数。
步骤S706,采用迭代扩张参数对样本图像的样本标注点进行迭代扩张,以实现对图像分割模型的迭代训练。
本申请实施例中,在迭代训练过程中,会根据每次迭代扩张之后得到的损失结果对全卷积神经网络中的权重进行修正。
在实现的过程中,可以确定分割后的处理图像与预设的处理图像之间的相似度,其中,预设的处理图像可以是对样本图像进行人工分割处理后所得到的图像,预设的处理图像中包括待分割对象所在的区域。
本申请实施例中,根据相似度确定损失结果,如果相似度大于相似度阈值,则停止对全卷积神经网络的修正;如果相似度小于相似度阈值,则采用上述步骤S705确定出迭代扩张参数,通过所确定出的迭代扩张参数对样本图像的样本标注点进行迭代扩张,即,对全卷积神经网络进行上一次扩张得到的分割后的处理图像,进行再一次迭代扩张,并根据迭代扩张参数对全卷积神经网络的权重参数进行修正,将修正后的全卷积神经网络的权重参数输出,以作为下一次迭代扩张过程中用于对分割后的处理图像进行再一次迭代扩张的神经网络的权重参数。
在一些实施例中,方法还包括:步骤S71,根据迭代扩张参数,对处理图像进行过滤,得到过滤后的处理图像。
这里,可以采用距离滤波器对处理图像进行过滤,以使得过滤后的处理图像的中的样本扩张区域的边界更加清晰。
对应地,步骤S706可以通过以下步骤实现:步骤S7061,通过所述迭代扩张参数,对所述过滤后的处理图像中的样本扩张区域进行所述迭代扩张,以实现对所述图像分割模型的迭代训练。
本申请实施例中,在训练得到图像分割模型的过程中,基于预先标注的样本标注点进行迭代扩张,且根据样本扩张区域与样本划分区域之间的第一样本损失值、和样本扩张区域与样本标注点之间的第二样本损失值,确定损失结果,从而逐步对图像分割模型进行优化,如此,通过优化后的图像分割模型能够对待处理图像进行准确的图像分割处理。
下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。
为了使用点标注得到与像素级标注相当的细胞分割结果,本申请实施例提供一种基于点标注的弱监督细胞分割方法,能够有效减少数据标注的工作量。
本申请实施例的方法首先利用点标注生成voronoi平面划分,通过同时引入点标注和voronoi划分作为监督信息训练细胞分割模型,然后使用细胞分割模型的预测结果作为新的点标注,与voronoi划分一起作为新一轮监督信息,来训练新的细胞分割模型。本申请实施例的方法,通过三轮循环迭代后,可以使得分割模型对细胞进行准确的分割。本申请实施例的创新点主要有:通过点标注生成voronoi划分,作为额外的监督信息;通过迭代方法逐步提高细胞分割的准确度,使分割模型能够对细胞进行准确分割。
本申请实施例中,首先使用点标注和voronoi边界作为监督信息,来训练分割模型,然后将模型预测结果作为新的点标注,通过三轮迭代逐步拟合真实的细胞范围,并通过在每一轮迭代中引入距离滤波器(distance filter)使得模型逐步覆盖整个细胞范围,从而得到最终的细胞分割模型。
本申请实施例可以以软件接口方式提供图像处理服务,其中,输入的待处理图像可以为病理图像,输出的处理图像为细胞像素级分割结果。如图8所示,是本申请实施例提供的产品侧应用场景示意图,输入病理图像80,经过细胞分割模型81对病理图像80进行分割处理,得到分割结果82并输出。
本申请实施例提供一种图像处理方法,主要分为人工点标注和迭代过程两个过程。人工点标注过程通过人工标注方法得到比较简单的细胞位置标注;迭代过程中将人工点标注或模型预测结果通过distance filter后作为新的细胞点标注,通过多轮迭代得到最终的细胞分割模型。
图9是本申请实施例提供的图像处理方法的一个可选的流程示意图,如图9所示,方法包括人工点标注和迭代过程两个过程,其中人工点标注过程包括以下步骤:
步骤S901,对病理图像90进行人工点标注。
这里,通过人工点标注方式对病理图像90中的每个细胞进行标点,以表明细胞所处的位置。如图10所示,是本申请实施例提供的人工点标注后的待处理图像,其中,人工点标注后的待处理图像1001上包括至少一个标注点1002。
请继续参照图9,本申请实施例中,迭代过程包括以下步骤:
步骤S902,通过距离滤波器(distance filter)对人工点标注图像进行过滤,得到新的细胞点标注图像。
这里,distance filter通过对图像进行过滤得到新的细胞点标注图像,其中,距离滤波器的计算过程如以下公式(1-1)所示:
其中,di,j表示像素点(i,j)的距离(distance);(k,m)表示距离像素点(i,j)最近的前景像素点的位置,其中,前景像素点是指前景图像的像素点,前景图像是指病理图像中的细胞的图像(即待处理图像中的待分割对象);α是一个系数,表示像素点(i,j)的距离(distance)向外扩张的范围大小,例如,可以设置为0.1,每次向外扩张大约10个像素。
步骤S903,对细胞点标注图像进行细胞点标注处理。
这里,细胞点标注的结果,初始时是人工点标注经过distance filter过滤之后所得到的结果;在参与训练分割模型后,则将分割模型的预测结果通过dista nce filter过滤后作为新的细胞点标注图像,并通过新的细胞点标注图像继续训练新的分割模型,如此,通过多轮迭代后,得到最终的细胞分割模型。
步骤S904,对人工点标注图像进行voronoi划分,得到voronoi划分图像。
由于通过人工点标注,可以对平面进行voronoi划分,因此,可以采用vor onoi划分技术划分得到voronoi边界,进而得到voronoi划分图像。需要说明的是,voronoi边界在迭代过程一直保持不变。图11是本申请实施例提供的voro noi划分图像的示意图,如图11所示,voronoi划分为白色线条所示,通过vor onoi划分得到的voronoi划分图像110中包括至少一个闭合的划分区域111,每一划分区域中包括一人工标注点112。
图12是本申请实施例提供的细胞点标注迭代过程的示意图,如图12所示,第一列121为原始的病理图像(即待处理图像),第二列122为voronoi划分图像,第三列123细胞点标注的迭代过程,其中,在每一次迭代过程中,会将细胞点标注图像输入至一个全卷积神经网络124中(FCN,Fully Convolutional Network),进行卷积处理,得到处理图像125。
在下一次迭代过程中,会对上一次得到的处理图像125通过distance filter进行过滤,并将过滤后的处理图像作为下一次迭代过程中的输入图像,再输入至全卷积神经网络124,如此循环迭代,从而完成对病理图像的细胞分割,并训练得到细胞分割模型。
需要说明的是,图12中的单虚线箭头126表示复制,即,第一列121中的病理图像、和第二列122中的voronoi划分图像,在每一次迭代过程中均是相同的;双虚线箭头127表示distance filter过滤,即在每一次迭代处理完成之后,均会对处理图像125进行一次distance filter过滤;单实线箭头128表示权重转移,即,每一次迭代过程中全卷积神经网络124的权重会根据损失结果进行迭代更新,更新之后的权重会转移至下一次迭代过程中的全卷积神经网络124中。
步骤S905,根据细胞点标注图像和voronoi划分图像,训练分割模型。
对于细胞点标注图像和voronoi划分图像,可以通过引入细胞点标注损失模型(point loss)和voronoi损失模型(voronoi loss)进行训练,其中,细胞点标注损失模型和voronoi损失模型,通过以下损失函数(1-2)和(1-3)进行损失计算:
其中,Loss
point表示细胞点标注损失模型的损失结果;Loss
voronoi表示voronoi损失模型的损失结果;D表示细胞点标注,V表示voronoi划分图像中划分区域的边界;I表示输入的病理图像;f表示分割模型;ReLU表示线性整流函数;|| ||
F表示F范数(Frobenius范数);
表示F范数的平方。需要说明的是,训练模型的整体损失结果是Loss
point和Loss
voronoi的和。
本申请实施例中,训练过程可以使用任意一种数据集进行训练,例如,可以使用公开数据集Monuseg,通过对数据集中的样本图像进行数据增强之后,将数据增强图像作为训练数据输入FCN模型进行训练,在一些实施例中,FCN模型包括但不限于LinkNet模型和Densenet模型等全卷积神经网络模型。模型的权重初始化可以使用image net数据集(其中,输入图像的尺寸为512*512像素,批处理大小为8,学习率0.0001,最大迭代次数200epoch),最终得到细胞分割模型91。
本申请实施例中,细胞分割结果92表示每一轮迭代得到的细胞分割模型91对训练数据的预测结果,如图12最后一列的处理图像125所示。
本申请实施例提供的图像处理方法,具有较强的适用性,可以不依赖硬件环境,可以处理各种类型的病理图片。图13A至13C是使用本申请实施例的细胞分割模型13对各种类型的病理图像进行处理的结果示意图,如图13A至13C所示,输入的是病理图像131、病理图像133和病理图像135,通过细胞分割模型13分别对病理图像131、病理图像133和病理图像135进行处理之后,分别对应得到处理图像132、处理图像134和处理图像136。
需要说明的是,本申请实施例中,可以使用预设次数的迭代,例如,使用三轮迭代,对人工点标注进行训练,并且,可以根据细胞大小的差异,调整迭代次数。分割模型中的FCN模型还可以使用其他分割模型替代LinkNet模型,例如采用densenet模型替代LinkNet模型。距离滤波器也可以使用高斯滤波(g aussian filter)等替代。
下面继续说明本申请实施例提供的图像处理装置354实施为软件模块的示例性结构,在一些实施例中,如图3所示,存储在存储器350的图像处理装置354中的软件模块可以是服务器300中的图像处理装置,包括:
获取模块3541,用于获取具有至少两个划分区域的待处理图像,每一所述划分区域中包括一个标注点,每一所述标注点对应一待分割对象;
迭代扩张模块3542,用于对所述待处理图像中的每一所述标注点进行迭代扩张,得到对应标注点的迭代扩张区域;
第一确定模块3543,用于分别确定所述迭代扩张区域与所述划分区域之间的第一损失结果、和所述迭代扩张区域与所述标注点之间的第二损失结果;
控制模块3544,用于当所述第一损失结果和所述第二损失结果,满足迭代终止条件时,停止对对应标注点的迭代扩张;
第二确定模块3545,用于将停止所述迭代扩张时得到的迭代扩张区域,确定为所述待处理图像中的待分割对象所在的区域。
在一些实施例中,所述装置还包括:
第三确定模块,用于根据第N次迭代扩张的所述第一损失结果和所述第二损失结果,确定第N+1次迭代扩张的迭代扩张参数;
所述迭代扩张模块还用于:采用所述迭代扩张参数,对所述待处理图像中的每一所述标注点进行迭代扩张,得到对应标注点的迭代扩张区域。
在一些实施例中,所述迭代扩张参数包括扩张距离;所述迭代扩张模块还用于:以每一所述标注点为中心,以所述扩张距离为半径,对所述待处理图像中的每一所述标注点进行迭代扩张,形成对应标注点的迭代扩张区域。
在一些实施例中,所述第三确定模块还用于:当所述第N次迭代扩张的所述第一损失结果与所述第二损失结果之和大于阈值时,获取每一所述标注点在所述第N次迭代扩张的迭代扩张区域内的像素点;确定与每一所述标注点相邻的迭代扩张区域内的像素点之间的像素距离;根据所述像素距离,确定用于进行所述第N+1次迭代扩张的扩张距离,得到所述迭代扩张参数。
在一些实施例中,所述控制模块还用于:获取所述第一损失结果对应的第一损失值、和所述第二损失结果对应的第二损失值;确定所述第一损失值和所述第二损失值之间的损失值之和;当所述损失值之和小于阈值时,停止对所述标注点的迭代扩张。
在一些实施例中,所述迭代扩张模块还用于:以每一所述标注点为中心、以预设扩张距离为半径,对所述待处理图像中的每一所述标注点进行初次扩张,形成具有至少两个扩张区域的前景区域;以每一所述标注点为中心、以所述预设扩张距离为半径,对所述前景区域中的每一所述扩张区域进行至少一次迭代扩张,得到对应标注点的迭代扩张区域。
在一些实施例中,所述待处理图像为病理图像,所述待分割对象为细胞;所述第二确定模块还用于:将停止所述迭代扩张时得到的迭代扩张区域,确定为所述病理图像中的细胞所在的区域。
在一些实施例中,在一些实施例中,所述装置还包括:处理模块,用于通过图像分割模型对所述待处理图像进行处理,得到所述待处理图像中的待分割对象所在的区域;所述图像分割模型包括全卷积神经网络和迭代扩张模型,所述全卷积神经网络用于对样本图像进行图像分割处理,所述迭代扩张模型用于根据迭代扩张参数对样本图像中的样本标注点进行迭代扩张。
在一些实施例中,所述图像分割模型通过以下步骤训练得到:对具有至少两个样本标注点的样本图像进行划分,形成具有至少两个样本划分区域的背景区域;以每一所述样本标注点为中心、以预设扩张距离为半径,对所述样本图像中的每一所述样本标注点进行扩张,形成具有至少两个样本扩张区域的前景区域;将所述前景区域作为正样本,输入至全卷积神经网络中进行图像分割处理,得到分割后的处理图像;将所述处理图像输入至预设损失模型中,得到损失结果;根据所述损失结果确定所述图像分割模型的迭代扩张参数;采用所述迭代扩张参数对所述样本图像的样本标注点进行迭代扩张,以实现对所述图像分割模型的迭代训练。
在一些实施例中,所述图像分割模型通过以下步骤训练得到:通过所述预设损失模型,确定所述样本扩张区域与所述样本划分区域之间的第一样本损失值;通过所述预设损失模型,确定所述样本扩张区域与所述样本标注点之间的第二样本损失值;将所述第一样本损失值与所述第二样本损失值之和,确定为所述损失结果。
在一些实施例中,所述图像分割模型通过以下步骤训练得到:当所述损失结果大于阈值时,获取每一所述样本标注点的样本扩张区域内的像素点;确定每一所述样本标注点与相邻样本扩张区域内的像素点之间的像素距离;根据所述像素距离,确定所述图像分割模型的迭代扩张参数。
在一些实施例中,所述处理模块还用于:根据所述迭代扩张参数,对所述处理图像进行过滤,得到过滤后的处理图像;对应地,所述图像分割模型通过以下步骤训练得到:通过所述迭代扩张参数,对所述过滤后的处理图像中的样本扩张区域进行所述迭代扩张,以实现对所述图像分割模型的迭代训练。
需要说明的是,本申请实施例装置的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
本申请实施例提供一种存储有可执行指令的存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图4示出的方法。
在一些实施例中,存储介质可以是计算机可读存储介质,例如,铁电存储器(FRAM,Ferromagnetic Random Access Memory)、只读存储器(ROM,R ead Only Memory)、可编程只读存储器(PROM,Programmable Read Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read Only Memory)、带电可擦可编程只读存储器(EEPROM,Electrically Erasable Programmable Read Only Memory)、闪存、磁表面存储器、光盘、或光盘只读存储器(CD-ROM,Compact Disk-Read Only Memory)等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(H TML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。