图像分割与视频分割方法

图像分割

  • 图像分割介绍
    • 1、普通分割
    • 2、语义分割
    • 3、实例分割(instance segmentation)
  • 传统的图像分割方法
    • 1、基于阈值的图像分割
      • 单阈值分割
      • 局部阈值分割
      • 阈值的选取
        • 直方图峰谷法
        • 迭代法
        • Otsu阈值分割法
        • 类内方差最小方差法
        • 最小错误概率分类法
        • 基于熵的二值化方法
    • 2、基于区域的图像分割
      • 区域生长
      • 区域分裂合并
        • 四叉树分解法
    • 3、基于边缘检测的图像分割
      • 边缘检测
        • Kirsch 算子
        • Log(Laplacian of Gaussian)
        • Canny算子
      • 边界获取
    • 4、基于形态学分水岭的图像分割
    • 5、基于图论的图像分割
  • 结合特定工具的图像分割算法
    • 1、基于小波分析和小波变换的图像分割方法
    • 2、基于马尔科夫随机场模型的图像分割方法
    • 3、基于遗传算法的图像分割方法
  • 基于人工智能的图像分割方法
    • 1、基于人工神经网络的图像分割
    • 2、基于聚类的分割
    • 3、主动轮廓模型
  • 视频分割方法
    • 1、基于时域的视频对象分割方法
    • 2、基于运动的视频对象分割方法
    • 3、交互式视频对象分割方法


图像分割是指根据灰度、彩色、纹理、几何形状等特征把图像划分为若干个互不相交的区域,使得这些特征在同一区域内表现出一致性或相似性,而在不同区域间表现出明显的不同。

图像分割介绍

普通的图像分割往往是根据图像的颜色纹理进行划分区域,而语义分割是基于一个语义单元,例如将人,车等目标从图像中分割出来,如果目标存在多种颜色,在普通分割中往往是分割成多个区域。而instance segmentation还要跟进一步,比如一排车连在一起,语义分割的结果是整个一排车在一个分割区域里,而instances segmentation还要将车与车分割开来。

1、普通分割

(即将不同的区域分割开来,结束。在一副图像中,把目标从背景中分离出来。)
将不同分属不同物体的像素区域分开。
如前景与后景分割开,狗的区域与猫的区域与背景分割开。

  • 这个时期的分割主要是通过提取图片的低级特征,然后进行分割,涌现了一些方法:Ostu、FCM、分水岭、N-Cut等。

2、语义分割

在普通分割的基础上,分类出每一块区域的语义(即这块区域是什么物体)。
如把画面中的所有物体都指出它们各自的类别。这里的语义仍主要指分割出来的物体的类别。

3、实例分割(instance segmentation)

(可以对同一类别的不同物体进行不同的划分,可以清楚地知道分割出来的左边和右边的两个人不是同一个人。)
在语义分割的基础上,给每个物体编号。
如这个是该画面中的狗A,那个是画面中的狗B。

传统的图像分割方法

1、基于阈值的图像分割

理论基础:目标或背景内部的相邻像素间灰度值是相似的,但是不同目标或背景上像素灰度差异较大,反映在直方图上就是不同目标或背景对应不同的峰,分割时,选取的阈值应位于直方图两个不同峰之间的谷上,以便将各个峰分开。

基本思想:通过阈值来定义图像中不同目标的区域归属。

具体做法:首先在图像的灰度取值范围内选择一灰度阈值,然后将图像中的各个像素的灰度值与这个阈值相比较,并根据比较的结果将图像中的像素划分到两类中,若图像中有多个灰度值不同的区域,那么可以选择一系列的阈值以便将每一个像素分到合适的类别中去。

特点:并行区域技术,实现简单、计算量小、性能较稳定,是最基本和最广泛应用的分割技术。适用于目标和背景占据不同灰度级范围的图。
优点:速度快,计算简单,效率高。
缺点:只考虑像素点灰度值本身的特征,一般不考虑空间特征,对噪声比较敏感。

单阈值分割

图像若只有目标和背景两大类,只需选取一个阈值,
在这里插入图片描述
即对于当像素值大于等于阈值T,认定为目标物体像素,令g(i,j)=1; 否则为背景像素,令g(i,j)=0。
若图像中存在多个目标需要提取,则需要采用多个阈值将每个目标分割开,称为多阈值分割。

局部阈值分割

很多情况下,目标物体和背景的对比度在图像的不同位置并不相同,因此需要根据图像的局部特征分别用不同的阈值对图像进行分割,即局部阈值分割。

阈值的选取

阈值分割的结果取决于阈值的选择。常见的阈值选择方法有:利用图像灰度直方图的峰谷法、最小误差法、基于过渡区法、利用像素点空间位置信息的变化阈值法、结合连通信息的阈值方法、最大相关性原则选择阈值和最大熵原则自动阈值法。

直方图峰谷法

选择双峰直方图之间的谷作为阈值。适用于目标和背景灰度差较大的图像。

迭代法

  1. 设置初始阈值为图像灰度均值。
  2. 利用阈值将图像分割成两部分, R 1 R_1 R1 R 2 R_2 R2
  3. 分别计算 R 1 R_1 R1 R 2 R_2 R2的均值 u 1 u_1 u1 u 2 u_2 u2
  4. 选取新的阈值 T = u 1 + u 2 2 T=\frac{u_1+u_2}{2} T=2u1+u2
  5. 重复(2)~(4)步,直至 R 1 R_1 R1 R 2 R_2 R2的均值不再变化为止。

适用于直方图双峰明显,谷底较深的图像,比双峰法分割的效果有很大的提高

Otsu阈值分割法

算法思想:阈值 T T T 分割出前景和背景两部分,前景的平均灰度为 u 0 u_0 u0,概率为 w 0 w_0 w0(前景点数占图像比例);背景的平均灰度为 u 1 u_1 u1,概率为 w 1 w_1 w1。总均值 u = w 0 ∗ u 0 + w 1 ∗ u 1 u=w_0*u_0+w_1*u_1 u=w0u0+w1u1。因方差是灰度分布均匀性的一种度量,方差值越大,说明构成图像的两部分差别越大。当部分目标错分为背景或部分背景错分为目标都会导致两部分的差别变小,因此使类间方差最大的分割意味着错分概率最小。(参考这儿)。

算法执行:从最小灰度值到最大灰度值遍历T,当T使得
g = w 0 ∗ ( u 0 − u ) 2 + w 1 ∗ ( u 1 − u ) 2 g=w_0*(u_0-u)^2+w_1*(u_1-u)^2 g=w0(u0u)2+w1(u1u)2

最大时的 T T T为分割的最佳阈值。
上述式子等价为:
g = w 0 ∗ w 1 ∗ ( u 0 − u 1 ) 2 g=w_0*w_1*(u_0-u_1)^2 g=w0w1(u0u1)2

类内方差最小方差法

在这里插入图片描述

最小错误概率分类法

基于熵的二值化方法

阈值 T T T将图像分割为目标和背景两部分,分别获得各自区域的灰度级在本区的分布概率,然后分别计算目标和背景区域的熵 H = − ∑ ( p log ⁡ p ) H=-\sum(p\log p) H=(plogp)
对每个灰度级分别计算
w = H O + H B w=H_O+H_B w=HO+HB

选取使 w w w最大的灰度级作为分割图像的阈值 T T T

2、基于区域的图像分割

理论基础:与“基于阈值的分割方法”的理论基础基本一致,都是利用同一物体区域内像素灰度的相似性。

基本思想:将灰度相似的区域合并,把不相似的区域分开,最终形成不同的分割区域。

具体做法:利用同一物体区域内像素灰度的相似性,将灰度相似的区域合并,把不相似的区域分开,最终形成不同的分割区域。

基于区域的图像分割方法主要有两种:区域生长和区域分裂合并算法。区域生长从单个像素出发,逐步合并以形成所需要的分割区域;区域分裂合并从全局出发,逐步分割至所需的分割区域。

种子区域生长法是从一组代表不同生长区域的种子像素开始,接下来将种子像素邻域里符合条件的像素合并到种子像素所代表的生长区域中,并将新添加的像素作为新的种子像素继续合并过程,直到找不到符合条件的新像素为止。该方法的关键是选择合适的初始种子像素以及合理的生长准则。

区域分裂合并法(Gonzalez,2002)的基本思想是首先将图像任意分成若干互不相交的区域,然后再按照相关准则对这些区域进行分裂或者合并从而完成分割任务,该方法既适用于灰度图像分割也适用于纹理图像分割。

区域生长

区域生长是串行区域技术,其分割过程的后续步骤的处理要根据前面步骤的结果进行判断而确定。
其基本思想是将具有相似性质的像素集合起来构成区域。具体是先对每个需要分割的区域找一个种子像素点作为生长的起点,然后将种子像素周围邻域中与种子像素具有相同或相似性质的像素合并到种子像素所在区域中。将这些新像素当作新的种子像素继续上面的过程,直到再没有满足条件的像素可被包括进来。
区域内部的一致性描述是区域生长法的基本准则。一般是灰度,也可以考虑颜色、纹理、形状等。

优点: 计算简单,对于较均匀的连通目标有较好的分割结果。
缺点: 需要人为选取种子,对噪声敏感,可能导致区域内有空洞。另外串行算法当目标较大时分割速度慢,算法设计时应尽量提高运行效率。

区域分裂合并

区域分裂合并从整个图像出发,不断分裂得到各个子区域,然后把前景区域合并,得到前景目标,继而实现目标的提取。
分裂合并的假设是对于一幅图像,前景区域是由一些相互连通的像素组成,因此如果把一幅图像分裂到像素级,那么就可以判断该像素是否为前景像素。当所有像素点或者子区域完成判断后,把前景区域或者像素合并就可以得到前景目标。

四叉树分解法

3、基于边缘检测的图像分割

理论基础:通常不同区域之间的边缘上像素灰度值的变化往往比较剧烈,这是边缘检测方法得以实现的主要假设之一。

基本思想:基于边缘检测的分割方法试图通过检测包含不同区域的边缘来解决分割问题。

具体做法:首先利用合适的边缘检测算子(一阶导数或二阶导数)提取出待分割场景不同区域的边界,然后对边界内的像素进行连通和标注,从而构成分割区域。
边缘检测方法一般利用图像一阶导数的极大值或二阶导数的过零点信息来提供判断边缘点的基本依据。

优点:边缘定位准确、运算速度快。
缺点:不能保证边缘的连续性和封闭性;在高细节区域存在大量碎边缘,难以形成一个大区域。因此,单独的边缘检测只能产生边缘点。需要进行后续处理以完成分割。
常采用边缘生长技术最大程度的保证边缘的封闭性。

边缘检测

图像预处理——图像分割

在这里插入图片描述
不同检测算子的对比:
(1)Roberts:适用于陡峭边缘、低噪声图像。提取的边缘较粗,边缘定位不是很准确。
(2)Sobel:适用于灰度渐变边缘、噪声较多的图像。对边缘定位比较准确。
(3)Prewitt:适用于灰度渐变边缘、噪声较多的图像。
(4)Log:双像素边界、对噪声敏感。
(5)Canny:不容易受噪声的干扰,能够检测弱边缘。

  • 目前最常用的边缘检测算子是Kirsch算子、LOG(Laplacian-Gauss)算子和Canny算子。

Kirsch 算子

在这里插入图片描述

Log(Laplacian of Gaussian)

拉普拉斯高斯算法:
(1)高斯滤波:根据人眼视觉特性选择高斯函数对图像进行平滑滤波。
G ( x , y ) = 1 2 π σ 2 e − x 2 + y 2 2 σ 2 G(x,y)=\frac{1}{2\pi\sigma^2}e^{-\frac{x^2+y^2}{2\sigma^2}} G(x,y)=2πσ21e2σ2x2+y2

g ( x , y ) = f ( x , y ) ∗ G ( x , y ) g(x,y)=f(x,y)\ast G(x,y) g(x,y)=f(x,y)G(x,y)

(2)拉普拉斯增强:对平滑图像g(x,y)进行拉普拉斯运算。
h ( x , y ) = ∇ 2 ( f ( x , y ) ∗ G ( x , y ) ) h(x,y)=\nabla^2(f(x,y)\ast G(x,y)) h(x,y)=2(f(x,y)G(x,y))

(3)检测:边缘检测判据是二阶导数的零交叉点(即h(x,y)=0 的点)并对应一阶导数的较大峰值。

由于对平滑图像g(x,y) 进行拉普拉斯运算可等效为G(x,y) 的拉普拉斯运算与f(x,y) 的卷积,故上式变为:
在这里插入图片描述
这样就有两种方法求图像边缘:
①先求图像与高斯滤波器的卷积,再求卷积的拉普拉斯的变换,然后再进行过零判断。
②求高斯滤波器的拉普拉斯的变换,再求与图像的卷积,然后再进行过零判断。
拉普拉斯算子对图像中的嗓声相当敏感。而且它常产生双像素宽的边缘,也不能提供边缘方向的信息。高斯-拉普拉斯算子是效果较好的边沿检测器。

Canny算子

参考之前的博文。

边界获取

边缘检测获得的都是一些孤立的点,需要进行边界获取将孤立点连成线。

4、基于形态学分水岭的图像分割

理论基础:分水岭分割(Watershed)法(Meyer,1990)是一种基于拓扑理论的数学形态学的分割方法。

基本思想:把图像看作是测地学上的拓扑地貌,图像中每一点像素的灰度值表示该点的海拔高度,每一个局部极小值及其影响区域称为集水盆,而集水盆的边界则形成分水岭。

具体做法:该算法的实现可以模拟成洪水淹没的过程,图像的最低点首先被淹没,然后水逐渐淹没整个山谷。当水位到达一定高度的时候将会溢出,这时在水溢出的地方修建堤坝,重复这个过程直到整个图像上的点全部被淹没,这时所建立的一系列堤坝就成为分开各个盆地的分水岭。

分水岭算法对微弱的边缘有着良好的响应,但图像中的噪声会使分水岭算法产生过分割的现象。

5、基于图论的图像分割

理论基础:图论中无向图的最优化问题。
基本思想:将图像映射为带权无向图,将像素点当作图的节点,利用最小剪切准则得到图像的最佳分割,即:把图像分割问题转化为一个无向图G=(V,E)的最优化问题。
具体做法:无向图中的节点表示图像中的像素,节点与节点之间的边表示像素之间的关系,根据一定的规则为每条边赋予一个权值,利用一定的最优化准则使分割结果中区域内的边有较低的权值,区域间的边有较高的权值,即区域之间的代价函数最小的划分便是该图最优的分割。

基于图论分割的基本原则是使划分成的两个区域(A,B)的内部相似度最大,区域(A,B)之间的相似度最小,同时应使得划分的区域尽量避免出现歪斜分割。为了能够得到精确的分割结果,设计割集准则至关重要,常见的割集准则有Minimum Cut、Average Cut、Normalize Cut、Min-max Cut、Ratio Cut等。

结合特定工具的图像分割算法

1、基于小波分析和小波变换的图像分割方法

2、基于马尔科夫随机场模型的图像分割方法

3、基于遗传算法的图像分割方法

基于人工智能的图像分割方法

1、基于人工神经网络的图像分割

2、基于聚类的分割

理论基础:图像分割就是图像中的像素进行分类。

基本思想:图像分割就是将图像的像素进行分类,于是,很自然的将聚类应用于图像分割问题中。

具体做法:给出一个目标函数,使得聚类过程中,目标函数达到最小为止。

  • 目前常见的基于聚类的分割方法主要有:C-均值聚类分割算法(HCM)、模糊C-均值聚类分割算法(FCM)。FCM聚类是HCM的改进,其区别主要在于:HCM算法对于对象的划分是硬性的,而FCM则是一种柔性的模糊划分;FCM模糊聚类算法的向量可以同时属于多个聚类,用0~1间的隶属度来确定每个对象属于各个类的程度,而HCM聚类算法中,一个给定的对象只能属于一个类。

3、主动轮廓模型

视频分割方法

1、基于时域的视频对象分割方法

理论基础:同一物体的各个部分往往具有一致的时间属性。

基本思想:时域分割主要时利用视频相邻图像之间的连续性和相关性进行分割。

具体做法:一种是通过当前帧和背景帧相减来获得差分图像,另外一种是利用两帧之间或者多帧之前的差来获得差分图像。

  • 基于时域的视频对象分割方法主要包括:背景差分法、帧间差分法。

2、基于运动的视频对象分割方法

理论基础:光流场和参数估计方面的理论知识。
基本思想:主要是基于光流场等方法进行运动参数估计,求出符合运动模型的像素区域,进而合并区域构成运动对象进行视频分割。
具体做法:首先求出光流场并进行参数估计,接着求出符合运动模型的像素区域,最后合并区域构成运动对象进行视频分割。

  • 基于运动的视频对象分割方法主要包括:光流法、参数化方法。

【补充小知识】:当人的眼睛与被观察的物体发生相对运动时,物体的影像在视网膜平面上形成一系列连续变化的图像,这一系列的图像信息不断“流过”视网膜,好像是一种光的“流”,所以被称为“光流”。光流是基于像素定义的,所有的光流的集合称为光流场。

3、交互式视频对象分割方法

参考资料:
[1] 常见图像和视频分割方法概述
[2] 传统图像分割概述—了解历史
[3] 图像语义分割的前世今生

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/351474.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

视频分割工具

无损分割(截取)视频文件密技 作者:Go on 其实,说 “截取”比较好一些。因为,通常,提出这样问题的人,多数都是需要把一段 视频中的一小段截取出来做为已用。 视频的截取,分为两种。一种是另存,…

运维小白必学篇之基础篇第十三集:网络概述中继实验

网络概述中继实验 实验作业(主机名为自己的名字): 1、搭建中继环境,要求如下: 网络要求: 内网:192.168.50.50 网关:192.168.50.254 192.168.60.254 外网:192.168.60.60 主…

分享QQ空间等功能

https://blog.csdn.net/weixin_41187842/article/details/81502700 注意:仅适用于普通原生html、JS项目 引入JS文件 with(document) 0[(getElementsByTagName(head)[0] || body).appendChild(createElement(script)).src http://bdimg.share.baidu.com/static/api/…

会员获取积分的方式有哪些?

积分作为商家引导顾客二次消费的一种手段,已经被各种行业深度挖掘利用,像我们熟知的购物平台、手机运营商都在使用积分规则,还有很多商家给积分换了名字,实质上也是通过积分推动顾客下单。 实体店也可以借鉴积分的这些用法&#x…

VS2010 .net4.0 登录QQ 获取QQ空间日志 右键选中直接打开日志 免积分 源码下载

代码有一部分是原来写的 最近翻代码 看到了 就改了一下 CSDN上传源码 上传了几次都没 成功 郁闷 不知道怎么回事 上传不了 想要的留 邮箱 或加群77877965 下载地址在下面 演示地址http://download.csdn.net/detail/xzh1995/6567829 源码地址http://download.csdn.net/deta…

QQ的分享到空间

使用的sdk版本&#xff1a; V2.2.2&#xff08;发布日期&#xff1a;2014.3.17&#xff09; 布局文件&#xff1a; <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"…

会员积分

将原有积分进行备份&#xff0c;然后赠送每位会员500积分&#xff0c;编写程序输出积分情况。 package javadome3;import java.util.Scanner;public class Text4 {public static void main(String[] args) {Scanner input new Scanner(System.in);System.out.println("请…

QQ空间密码和权限

QQ空间密码和权限 | 米站互联 | 米站互联网站&#xff0c;专业知识资讯。 相册查看 第一步确保你已经加上别人的QQ号&#xff0c;不然会出现主人设置了权限&#xff0c;您可通过以下方式访问。 去网上或者腾讯官方下载QQ PC版 腾讯软件官方下载地址网页&#xff1a;要啥有啥…

从JMeter Cookie管理器开始,轻松掌握接口测试技能!

目录 【前言】 【1. 添加Cookie管理器】 【2. 登录接口获取Cookie】 【3. Cookie关联】 【4. 动态修改Cookie值】 【结论】 【附录】 【前言】 在接口测试中&#xff0c;我们经常需要对Cookie进行处理和关联&#xff0c;来模拟用户在浏览器中的操作。特别是在登录和权限…

【CSS 04】Zoro 外边距 外边距合并 内边距 内容高度与宽度 框模型 轮廓

CSS 说在前面外边距 margin外边距合并 margin_collapse内边距 padding高度与宽度 dimension框&#xff08;盒子&#xff09;模型 boxmodel轮廓 outline 说在前面 最近发现一个有趣的事情&#xff0c;就是CSDN会把我写在【】中的Zoro当做文章主要技术关键词&#xff0c;尽管我在…

白盒测试、黑盒测试、灰盒测试

根据被测对象的不同&#xff0c;软件测试可以分为白盒测试、黑盒测试、灰盒测试三种方式。那么&#xff0c;这三种测试测试方式具体是如何运行的&#xff1f;各有什么特点&#xff1f;下面&#xff0c;跟着小厚一起了解一下吧&#xff01; 01 白盒测试 ●概念&#xff1a; ➢…

公司注册公司的经营范围怎么填

现在的公司还真不少&#xff0c;似乎一家企业还是店铺都要加上公司这个名号才会变得高大上一样&#xff0c;而在郑州创立公司少不了要办理这些业务&#xff0c;填写相应的注册经营范围&#xff0c;可能大家这样子听起来觉得简单&#xff0c;但事实上实施起来并不是那么一回事儿…

Neo4j安装配置教程

目录结构 前言Neoj4简介安装JDKNeo4j安装步骤Neo4j下载解压Neo4j压缩包配置环境变量启动Neo4j执行命令报错&#xff0c;报错信息如下&#xff1a; 启动Neo4j&#xff0c;再次测试浏览器访问Neo4j参考链接 前言 安装所需配件网盘一键下载。以下描述中&#xff0c;官网下载均有描…

填万能经营范围模板,避开办理营业执照经营范围的坑

常见行业经营范围模板&#xff01;来挑挑看吧&#xff01;&#xff08;附万能经营范围模板&#xff09; 注册企业时有没有常常遇到经营范围怎么选&#xff1f;哪些行业是行政许可项目&#xff1f;哪些可以“先照后证”&#xff1f; 现在工商登记对经营范围应该怎么写已经没…

中国十大进口母婴店热销品牌排名前10

根据2020年中国品牌网统计的十大进口母婴品牌排名,由优家宝贝整理后发布。分别是以下十个进口母婴品牌,根据热度进行的名次排行榜。 排在Top1的是贝亲,它创始于1957年,2002年正式进入中国市场,它秉承爱的理念,以“放心、安全、信赖”作为奠定品牌价值的基石。它一直致力于为消费…

服装商标带,店家的品牌标志

服装商标带,店家的品牌标志 服装商标带特征: 1、在商标的制作材料上,选择亲肤性强的棉纺织品作为制作商标的标识的标示块或条,让商标的标识的标示块或条与皮肤接触而不导致皮肤瘙痒; 2、是在商标的标示块、标示条的缝纫的位置上,将商标缝纫在上述服装的袖口、衣领口或衣领的…

营业执照经营范围怎么填写

经营范围局限了企业运营时的经营活动&#xff0c;企业经营不能超过该经营范围&#xff0c;经营范围是我们在注册公司时的必填项目&#xff0c;因此今天快点办小编就来跟你讲讲经营范围的那些事&#xff0c;包括是什么、怎么填写、有哪些经营范围。 1.经营范围是什么&#xff1…

中国童装十大品牌是什么?

中国童装十大品牌是什么&#xff1f; [品牌 童装 市场 服装] 悬赏点数 10 征答截止时间 2009-4-28 下午03:08:59 00 xzerq 2009-4-8 下午03:08:59 172.30.211.* 举报 中国童装十大品牌是什么&#xff1f; 回答 回答 00 u1985 2009-4-8 下午03:09:14 113.132.215.* 举报 中…

海睿思分享 | 主数据如何赋能企业运营管理

在全球范围内&#xff0c;企业正在越来越多地依赖数据进行决策和运营。然而&#xff0c;由于数据量的爆炸式增长以及数据来源的多样化&#xff0c;管理这些数据以获取有效的洞见变得越来越困难。 主数据管理&#xff08;MDM&#xff09;作为一种方法和技术&#xff0c;旨在帮助…

实战:Spring Cloud Stream消息驱动框架整合rabbitMq

文章目录 前言Spring Cloud Stream简析Spring Cloud Stream与rabbitmq整合1、添加pom依赖2、application.yml增加mq配置3、定义输入输出信道4、使用输入输出信道收发消息5、模拟正常消息消费6、模拟异常消息 前言 相信很多同学都开发过WEB服务&#xff0c;在WEB服务的开发中一…