图像分割(九)—— Mask Transfiner for High-Quality Instance Segmentation

news2024/11/17 1:42:52

Mask Transfiner for High-Quality Instance Segmentation

  • Abstract
  • 1. Intrudouction
  • 3. Mask Transfiner
    • 3.1. Incoherent Regions
    • 3.2. Quadtree for Mask Refinement
      • Detection of Incoherent Regions
      • 四叉树的定义与构建
      • 四叉树的细化
      • 四叉树的传播
    • 3.3. Mask Transfiner Architecture
      • 细化网络的架构
      • RoI特征金字塔
      • 输入节点序列
      • 节点编码器
      • 序列编码器和像素解码器
      • 训练和推理
      • 实现细节

Abstract

两阶段和基于查询的实例分割方法取得了显著的效果。然而,它们的分割掩模仍然非常粗糙。在本文中,我们提出了掩模转换器的高质量和高效的实例分割。我们的掩模变换器不是在规则的密集张量上工作,而是分解并将图像区域表示为四叉树。我们的基于转换器的方法只处理检测到容易出错的树节点,并并行地自纠正它们的错误。虽然这些稀疏像素只占总数的一小部分,但它们对最终的掩模质量至关重要。这使得掩码转换器能够以较低的计算成本预测高度准确的实例掩码。大量的实验表明,掩码转换器在三个流行的基准测试上优于当前的实例分割方法,显著改善了两阶段和基于查询的框架,在COCO和BDD100K上的+3.0掩码AP,以及在城市景观上的+6.6边界AP。

1. Intrudouction

实例分割是计算机视觉中的一个基础任务,需要预测图像中每个像素点的实例标签,并区分不同的物体。然而,实例分割的效果提升很大程度上是由物体检测器的发展推动的,基于 Mask R-CNN 和 DETR 的方法在 COCO Challenge中取得了领先性能。尽管这些方法在物体的检测方面表现出色,分割物体的mask在高频区域仍过度地粗糙和平滑,并有大量的边缘像素点被错分。准确且高质量的实例分割不仅需要考虑图像的高层语义,也需要大分辨率的深度特征图以保留物体细节,与此同时,大尺寸会带来高计算量和内存消耗。因此,高效及非常准确的实例分割是极具挑战的。

为了解决以上问题,本文提出基于Transformer的高质量实例分割算法Mask Transfiner。如图 1 ,不同于常规方法,Transfiner首先识别容易出错并需要优化的像素区域(黄色标识),并把这些像素点按四叉树结构表示。这些像素点是根据下采样物体mask的信息损失而计算得到,主要分布在物体边界或高频区域中,空间上不连续。我们把这些区域称为信息损失区域(Incoherent Regions)。它们位置稀疏,仅占总像素的一小部分。然而,通过实验分析,我们发现这一区域对最终分割性能非常重要。这允许Transfiner在预测物体mask的过程中只处理在高分辨率特征图上的少部分区间。
在这里插入图片描述
结合信息损失区域的离散分布特点,Transfiner通过构建四叉树结构来表示多层级上不同的离散点。为了预测每个树节点实例标签,由于点分布在不连续的空间上,Transfiner没有采用卷积网络,而设计了基于Transformer的分割网络。Transfiner将这些离散的节点转为无序的像素序列。它包含三个模块:节点编码器 (Node Encoder)、序列编码器 (Sequence Encoder)和像素解码器 (Pixel Decoder)。节点编码器首先丰富每个点的特征表示,例如补充点的位置编码和临近点局部细节信息。然后,序列编码器将节点序列作为Query输入基于Transformer的序列编码器中。最后,像素解码器预测每个点对应的实例标签。与PointRend中使用的MLP相比,特征点的序列化输入和多头注意力使得Transfiner能够灵活地将多个尺度的稀疏特征点同时建模,并对每个特征点的关系进行长距离比较和跨层级地进行关联。


3. Mask Transfiner

3.1. Incoherent Regions

现有实例分割方法[15, 21]产生的许多分割错误是由于空间分辨率的损失,例如掩码下采样操作、小的RoI池化大小和系数压缩[15, 23],在这些情况下,掩码预测本身是在粗糙的特征尺度上进行的。尽管效率很高,但低空间分辨率使得准确预测对象边界变得具有挑战性,因为高频细节的损失。在本节中,我们首先定义不连贯区域(incoherent regions),即由于空间分辨率降低而导致掩码信息丢失的区域。然后,通过分析它们的属性,我们观察到很大一部分错误确实位于这些区域中。

不连贯区域的定义 为了识别不连贯区域,我们通过对掩码本身进行下采样来模拟网络中由于下采样导致的信息损失。具体而言,在掩码无法通过随后的上采样步骤正确重构的区域内会丢失信息,如图4所示。形式上,设 M l M_l Ml 为某一尺度级别 l l l 上物体的二进制真实实例掩码。每个尺度级别的分辨率相差一个因子2,其中 l = 0 l=0 l=0 为最细的尺度,而 l = L l=L l=L 为最粗的尺度。我们分别用 S ↓ S↓ S S ↑ S↑ S 表示 2 倍最近邻下采样和上采样。则在尺度 l l l 上的不连贯区域是通过以下方式获得的二进制掩码:
D l = O ↓ ( M l − 1 ⊕ S ↑ ( S ↓ ( M l − 1 ) ) ) . (1) D_l = \mathcal {O}_\downarrow (M_{l-1} \oplus \mathcal {S}_\uparrow (\mathcal {S}_\downarrow (M_{l-1}))). \tag{1} Dl=O(Ml1S(S(Ml1))).(1)

这里,⊕表示逻辑“异或”操作, O ↓ \mathcal O↓ O 是通过在每个2×2邻域内执行逻辑“或”操作进行2倍下采样。因此,如果原始掩码值 M l − 1 M_{l-1} Ml1 在较细尺度级别的至少一个像素中与其重构值不同,则像素 ( x , y ) (x, y) (x,y) 为不连贯的,即 D l ( x , y ) = 1 D_l(x, y) = 1 Dl(x,y)=1。直观上,不连贯区域大多散布在对象实例的边界或高频区域,包含由于粗糙掩码而缺失或多余的错误预测标签的点。我们在图6和补充文件中提供了这些区域的可视化,它们在典型图像上稀疏且不连续分布。

在这里插入图片描述

Figure 4. Illustration on incoherent regions definition by simulating mask information loss.
通过模拟掩模信息损失来说明非相干区域的定义。

Properties of Incoherent Regions
在表1中,我们提供了对上述不连贯区域的分析。结果显示,大部分预测错误集中在这些不连贯区域,占所有错误预测像素的43%,而对应的边界框区域仅占14%。在不连贯区域中,粗糙掩码预测的准确率为56%。通过固定边界框检测器,我们进行了一项“oracle”研究,为每个对象填充所有不连贯区域的真实标签,同时将其余部分保留为初始掩码预测。与在不连贯区域使用初始掩码预测相比,性能从35.5 AP跃升至51.0 AP,确实证明它们对于提高最终性能至关重要。

1

3.2. Quadtree for Mask Refinement

在这一部分,我们描述了用于检测和细化图像中不连贯区域的方法。我们的方法基于逐步检测和划分每个特征尺度中不连贯区域的理念。通过仅拆分已识别的不连贯像素进行进一步细化,我们的方法有效地处理高分辨率特征,只关注重要区域。为了形式化我们的方法,我们采用四叉树结构首先识别不同尺度上的不连贯区域。然后,我们使用在第3.3节中详细描述的网络,为四叉树中的所有不连贯节点预测细化的分割标签。最后,我们利用四叉树通过将更正的掩码概率从粗尺度传播到细尺度,融合来自多个尺度的新预测。

tu5

Figure 5. The framework of Mask Transfiner. On the point quadtree, yellow point grids denote detected incoherent regions requiring further subdivision to four quadrants. The incoherent query sequence is composed of points across three levels of the quadtree for joint refinement. The encoder of Transfiner consists of node encoder and sequence encoder, while the pixel decoder is on top of each self-attended query pixel and output their final labels. The incoherence detector is detailed in the right part of the figure with detections on multi-level incoherent regions (Yellow). The higher-resolution detection is under the guidance of the predicted incoherent mask up-sampled from lower level.

Detection of Incoherent Regions

图5的右侧部分描绘了我们的轻量级模块的设计,用于高效地在多尺度特征金字塔上检测不连贯区域。遵循级联设计,我们首先将最小特征与粗略的目标掩码预测连接在一起作为输入,然后使用简单的全卷积网络(四个3×3卷积层)以及一个二元分类器来预测最粗糙的不连贯掩码。接着,检测到的低分辨率掩码被上采样并与相邻尺度中的较大分辨率特征融合,以指导更细的非连贯预测,其中只使用单个1×1卷积层。在训练过程中,我们强制在低级生成的真实不连贯点(由公式1 产生)中,覆盖其在较高级特征图中的父点。

四叉树的定义与构建

我们定义了一个点四叉树,用于分解检测到的不连贯区域。我们的结构如图5 所示,其中一个位于高层FPN特征(如特征分辨率28×28)的黄色点在其相邻的低层FPN特征图(如分辨率56×56)中具有四个象限点。这些都是特征点,但粒度不同,因为它们位于不同的金字塔层次。与计算机图形学中使用的传统四叉树“单元”不同,四叉树“单元”可以包含多个点,我们的点四叉树的细分单元始终是单个点,点的划分由检测到的不连贯值和二元分类器的阈值决定。

基于检测到的不连贯点,我们构建了一个多级层次四叉树,从使用最高级特征图中的检测点作为根节点开始。这些根节点被选择用于在低层特征图上细分为四个象限,具有更大的分辨率和更多的局部细节。请注意,在细层次上,只有被检测为不连贯的象限点才能进一步细分,并且不连贯树节点的扩展在与之前粗糙层次的不连贯预测相对应的区域内受到限制。

四叉树的细化

我们使用基于变换器的架构来细化四叉树中不连贯节点的掩码预测。我们的设计在第3.3节中描述。它直接在四叉树的节点上操作,共同提供每个不连贯节点的细化掩码概率。

四叉树的传播

鉴于细化的掩码预测,我们设计了一种利用四叉树结构的分层掩码传播方案。给定低分辨率中的初始粗掩码预测,Mask Transfiner首先修正四叉树根层的点标签,然后通过最近邻插值将这些修正的点标签传播到相应的四个象限的较细层级中。标签修正的过程在不连贯节点上以分层方式高效进行,直到达到最细的四叉树层级。与仅修正四叉树中最细叶节点的标签相比,这种方法通过将修正标签传播到中间树层的叶节点,扩大了细化区域,而成本几乎可以忽略不计。

3.3. Mask Transfiner Architecture

细化网络的架构

在这一部分,我们描述了细化网络的架构,该网络以构建的四叉树上的不连贯点作为输入(第3.2节),进行最终的分割细化。这些点沿高频区域稀疏分布,且在空间上不连续。因此,标准的卷积网络在均匀网格上操作并不合适。相反,我们设计了一个细化变换器,称为Mask Transfiner,能够并行修正所有不连贯四叉树节点的预测。

准确地对模糊点进行分割需要细粒度的深层特征和粗语义信息。因此,网络需要强大的建模能力,以充分关联点及其周围的上下文,包括空间和跨层的邻近点。因此,变换器(transformer)能够处理序列输入,并通过多头注意力层进行强大的局部和非局部推理,是我们Mask Transfiner设计的自然选择。与[28]中的多层感知器(MLP)相比,变换器强大的全局处理能力与我们的四叉树结构非常契合,有助于有效融合具有不同粒度的多层特征点信息,并显式建模点对点关系。

图5展示了我们的Mask Transfiner的整体架构。基于分层特征金字塔网络(FPN)[32],实例分割以多层和粗到细的方式进行。Mask Transfiner不再为每个目标使用单层FPN特征[21],而是将稀疏检测到的不连贯图像区域中的特征点序列作为输入,并输出相应的分割标签。

RoI特征金字塔

给定一张输入图像,配备特征金字塔网络(FPN)的CNN骨干网络首先提取用于下游处理的层次特征图,其中我们利用P2到P5的特征层。基础目标检测器[15, 21]预测边界框作为实例提案。然后,通过在FPN的三个不同层级 P i , P i − 1 , P i − 2 {P_i, P_{i−1}, P_{i−2}} Pi,Pi1,Pi2中提取RoI特征,构建RoI特征金字塔,方形尺寸逐渐增大为 28 , 56 , 112 {28, 56, 112} 28,56,112 。起始层级 i i i 计算为 i = ⌊ i 0 + log ⁡ 2 ( W H / 224 ) ⌋ i = \lfloor i_0 + \log_2(\sqrt{WH}/224)\rfloor i=i0+log2(WH /224)⌋,其中 i 0 = 4 i_0 = 4 i0=4 W W W H H H 分别是RoI的宽度和高度。最粗的层级特征包含更多的上下文和语义信息,而更精细的层级则解析更多的局部细节。

输入节点序列

根据第3.2节讨论的四叉树以及每个节点的相关FPN特征,我们为基于变换器的架构构建输入序列。该序列由来自四叉树所有三个层级的不连贯节点组成。因此,结果序列的大小为 C × N C \times N C×N,其中N是节点的总数,C是特征通道维度。值得注意的是,由于高度稀疏性, N ≪ H W N \ll HW NHW。此外,由于变换器的置换不变性,序列的顺序并不重要。与标准的变换器编码器相比,Mask Transfiner的编码器有两个部分:节点编码器和序列编码器。

节点编码器

为了丰富不连贯点的特征,Mask Transfiner的节点编码器使用以下四种不同的信息线索对每个四叉树节点进行编码:

  1. 从FPN金字塔的相应位置和层级提取的细粒度特征。
  2. 基础检测器的初始粗糙掩膜预测提供区域特定和语义信息。
  3. 每个RoI中的相对位置编码封装了节点之间的空间距离和关系,捕捉重要的局部依赖和相关性。
  4. 每个节点的周围上下文捕捉局部细节以丰富信息。对于每个节点,我们使用从 3 × 3 3×3 3×3 邻域提取的特征,并通过全连接层进行压缩。直观地说,这有助于定位边缘和边界,同时捕捉物体的局部形状。如图5所示,细粒度特征、粗糙分割线索和上下文特征首先被连接并通过全连接层融合为原始特征维度。然后,将位置嵌入添加到结果特征向量中。

序列编码器和像素解码器

接下来,Transfiner的序列变换器编码器共同处理来自四叉树所有层级的编码节点。变换器因此执行全局空间和跨尺度推理。每个序列编码器层具有标准的变换器结构,由多头自注意力模块和全连接前馈网络(FFN)构成。为了为不连贯点序列提供足够的正负参考,我们还使用来自最粗FPN层级的小尺寸 14 × 14 14×14 14×14 的所有特征点。不同于具有深度注意力层的标准变换器解码器[4],Mask Transfiner中的像素解码器是一个小型的两层多层感知器(MLP),它解码树中每个节点的输出查询,以预测最终的掩膜标签。

训练和推理

基于构建的四叉树,我们为Mask Transfiner开发灵活和自适应的训练与推理方案,其中所有检测到的不连贯节点跨四叉树层级形成一个序列以进行并行预测。在推理过程中,为了获得最终的物体掩膜,Mask Transfiner在获得不连贯节点的细化标签后,遵循四叉树传播方案(第3.2节)。在训练过程中,整个Mask Transfiner框架可以以端到端的方式进行训练。我们采用了一个多任务损失函数:
L = λ 1 L Detect + λ 2 L Coarse + λ 3 L Refine + λ 4 L Inc . (2) \mathcal {L} = \lambda _1\mathcal {L}_{\text {Detect}} + \lambda _2\mathcal {L}_{\text {Coarse}} + \lambda _3\mathcal {L}_{\text {Refine}} + \lambda _4\mathcal {L}_{\text {Inc}} \tag{2}. L=λ1LDetect+λ2LCoarse+λ3LRefine+λ4LInc.(2)
其中, L Refine L_{\text{Refine}} LRefine表示不连贯节点的预测标签与其真实标签之间的L1损失。二元交叉熵损失 L Inc L_{\text{Inc}} LInc用于检测不连贯区域。检测损失 L Detect L_{\text{Detect}} LDetect包括来自基础检测器的定位和分类损失,例如Faster R-CNN [35]或DETR检测器。最后, L Coarse L_{\text{Coarse}} LCoarse代表基础粗糙分割预测的损失[21]。超参数权重 λ 1 , 2 , 3 , 4 \lambda_{1,2,3,4} λ1,2,3,4的值为 1.0 , 1.0 , 1.0 , 0.5 {1.0, 1.0, 1.0, 0.5} 1.0,1.0,1.0,0.5

实现细节

Mask Transfiner在两阶段检测器Faster R-CNN [35]和基于查询的检测器[4]上实现。我们设计了一个3级的四叉树,并使用Detectron2 [43]中实现的Mask R-CNN的超参数和训练计划作为骨干网络和粗糙掩膜头。Mask Transfiner编码器由三个标准变换器层组成。每层有四个注意力头,特征维度为256。在我们的消融研究中,采用了R-50-FPN [22]和Faster R-CNN,学习计划为1×。为了与COCO排行榜进行比较,我们采用了缩放抖动,图像短边随机从[640, 800]中抽取,并遵循[26, 30]中的训练计划。更多细节请参见补充文件。

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

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

相关文章

修改Kali Linux的镜像网站

由于官方的镜像可能会出现连接不上的问题导致无法安装我们所需要的包,所以需要切换镜像站为国内的,以下是一些国内常用的Kali Linux镜像网站,它们提供了与Kali Linux官方网站相同的软件包和资源,但访问速度更快: 清华…

Feign:服务挂了也不会走fallback

Feign 本质上是一个 HTTP 客户端,用于简化微服务之间的 HTTP 通信。它允许开发者通过定义接口和注解来声明式地编写 HTTP 客户端,而无需手动编写 HTTP 请求和响应处理的代码。 今天在模拟微服务A feign调用微服务B的时候,把微服务B关了&#…

通过WinCC在ARMxy边缘计算网关上实现智能运维

随着信息技术与工业生产的深度融合,智能化运维成为提升企业竞争力的关键因素之一。ARMxy系列的ARM嵌入式计算机BL340系列凭借其高性能、高灵活性和广泛的适用性,为实现工业现场的智能运维提供了坚实的硬件基础。 1. 概述 ARMxy BL340系列是专为工业应用…

python爬虫案例——抓取链家租房信息(8)

文章目录 1、任务目标2、分析网页3、编写代码1、任务目标 目标站点:链家租房版块(https://bj.lianjia.com/zufang/) 要求:抓取该链接下前5页所有的租房信息,包括:标题、详情信息、详情链接、价格 如: 2、分析网页 用浏览器打开链接,按F12或右键检查,进入开发者模式;因…

【病理图像】如何获取全切片病理图像的信息python版本

1. QuPath 拿到一张全切片病理图像时,我们可以用QuPath查看,如下图: 随着鼠标滚轮的滑动,我们可以看到更加具体的细胞状态,如下图: 当然,我们也可以在Image看到当前全切片图像的一些信息,如下图: 如果是10张以内的图像还好,我们可以一张一张打开查看,但是我们在…

基于VUE的在线手办交易平台购物网站前后端分离系统设计与实现

目录 1. 需求分析 2. 技术选型 3. 系统架构设计 4. 前端开发 5. 后端开发 6. 数据库设计 7. 测试 8. 部署上线 9. 运维监控 随着二次元文化的兴起,手办作为一种重要的周边产品,受到了广大动漫爱好者的喜爱。手办市场的需求日益增长,…

重拾CSS,前端样式精读-布局(表格,浮动,定位)

前言 本文收录于CSS系列文章中,欢迎阅读指正 CSS布局在Web开发中经历了多个阶段的演变,不同的时期出现了不同的布局方法,以适应不断变化的设计需求,从表格布局,浮动布局,到弹性盒,格栅布局&am…

【C++】—— priority_queue与仿函数

【C】—— priority_queue 与仿函数 1 priority_queue 介绍2 priority_queue 的使用2.1 priority_queue 的函数接口2.2 priority_queue 的使用 3 仿函数3.1 什么是仿函数3.2 仿函数的应用 4 需自己写仿函数的情况4.1 类类型不支持比较大小4.2 类中支持的比较方式不是我们想要的…

多模态——基于XrayGLM的X光片诊断的多模态大模型

0.引言 近年来,通用领域的大型语言模型(LLM),如ChatGPT,已在遵循指令和生成类似人类的响应方面取得了显著成就。这些成就不仅推动了多模态大模型研究的热潮,也催生了如MiniGPT-4、mPLUG-Owl、Multimodal-G…

在vscode在使用idea编辑器的快捷键

在vscode在使用idea编辑器的快捷键 在vscode扩展在搜索idea key结果如下: 选择IntelliJ IDEA Keybindings安装(注意作者是Keisuke Kato),安装后就可以在vscode编辑器中使用idea编辑器的快捷键。

Fastadmin 前台任意文件读取漏洞

漏洞描述 FastAdmin是一个基于ThinkPHP5和Bootstrap的后台开发框架&#xff0c;支持权限管理、响应式开发、多语言、模块化开发、CRUD和自由可扩展等功能。 漏洞复现 FOFA body"fastadmin.net" || body"<h1>fastadmin</h1>" && tit…

c语言200例 066

大家好&#xff0c;欢迎来到无限大的频道 今天给大家带来的是c语言200例。 要求&#xff1a; 根据输入的职业表示&#xff0c;区分是老师还是学生&#xff0c;然后根据输入的信息&#xff0c;将对应的信息输出&#xff0c;如果是学生&#xff0c;则输出班级&#xff0c;如果是…

xlsx库插件读取excel文件

input读取xlsx文件内容 效果代码 前端用input读取 .xlsx文件的内容 xlsx库参考连接 项目中我用的ant-design-vue&#xff0c;不过用input一样的大同小异 注意区分xlsx库和node-xlsx库的使用环境 效果 代码 <!--* Descripttion: * Author: 苍狼一啸八荒惊* Date: 2024-08-…

英文翻译中文怎么做?试试这四款翻译工具!

日常工作中&#xff0c;我时常需要处理各种学术资料&#xff0c;其中不乏英文文献。在这个信息爆炸的时代&#xff0c;翻译工具成为了我们不可或缺的好帮手。今天&#xff0c;我想和大家分享几款我常用的翻译工具&#xff0c;它们在英文翻译中文方面的表现&#xff0c;真的让我…

学习鸿蒙Harmong基础(二)

1.类声明和使用 class Perpon { name : string "小赵"; age : number 24; isShow :boolean true; // 构造函数 constructor(name:string,age:number,isShow:boolean){ this.name name; this.age age; this.isShow isShow } puperyInfo(){ if (this.isShow) { …

Chainlit集成LlamaIndex实现知识库高级检索(子问题查询引擎)

检索原理 llama_index 的 SubQuestionQueryEngine 是一个用于处理复杂查询的机制&#xff0c;它的主要目的是将复杂的查询问题分解成多个较小的、更容易管理和处理的子问题。这种技术有助于提高查询效率和准确性&#xff0c;尤其是在处理大量文档或者需要多步骤推理的情况下。…

2024年【金属非金属矿山(露天矿山)安全管理人员】最新解析及金属非金属矿山(露天矿山)安全管理人员考试试卷

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 金属非金属矿山&#xff08;露天矿山&#xff09;安全管理人员最新解析参考答案及金属非金属矿山&#xff08;露天矿山&#xff09;安全管理人员考试试题解析是安全生产模拟考试一点通题库老师及金属非金属矿山&#…

安装 Nacos 启动报错 java.lang.IllegalArgumentException: db.num is null

java.io.IOException: java.lang.IllegalArgumentException: db.num is nullat com.alibaba.nacos.config.server.service.datasource.ExternalDataSourceServiceImpl.reload(ExternalDataSourceServiceImpl.java:130)解决办法&#xff1a; 编辑 startup.cmd 文件 找到 set MO…

计算机毕业设计 基于Python的热门微博数据可视化分析系统的设计与实现 Python+Django+Vue 可视化大屏 附源码 讲解 文档

&#x1f34a;作者&#xff1a;计算机编程-吉哥 &#x1f34a;简介&#xff1a;专业从事JavaWeb程序开发&#xff0c;微信小程序开发&#xff0c;定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事&#xff0c;生活就是快乐的。 &#x1f34a;心愿&#xff1a;点…

海外盲盒APP系统:盲盒出海热潮下的选择

近年来&#xff0c;盲盒市场展现出了强劲的发展态势&#xff0c;不仅在国内持续上演“盲盒热”&#xff0c;在海外市场中更是“一盒难求”&#xff01;在盲盒出海的浪潮下&#xff0c;盲盒在国际市场中迅速火爆&#xff0c;一时席卷了全球市场。 海外盲盒系统是企业拓展海外市…