Detect Globally, Refine Locally: A Novel Approach to Saliency Detection论文翻译

Detect Globally, Refine Locally: A Novel Approach to Saliency Detection

译:全局检测,局部细化:显著性检测的一种新方法

Abstract

对目标显著性检测来说,上下文信息的有效集成是必要的。为了达到这个目标,现在大多数基于“跳跃”结构的方法,主要集中于如何去融合卷积神经网络的层级特征。它们只是简单地应用连接或元素化操作来包含高级语义线索和低级详细信息。然而,这会降低预测的质量,因为杂乱和嘈杂的信息也会被传递。为了解决这个问题,我们提出了一个全局递归定位网络(RLN),它利用加权响应映射的上下文信息,以更准确地定位显著性目标。特别是,使用一个循环模块来在多个时间步长中逐步细化CNN的内部结构。此外,为了有效地恢复目标边界,我们提出了一个局部边界细化网络(BRN)来自适应地学习每个空间位置的局部上下文信息。学习到的传播系数可以用来最优地捕获每个像素与其邻居之间的关系。在五个具有挑战性的数据集上进行的实验表明,我们的方法在流行的评估度量方面的表现优于所有现有的方法。

1. Introduction

近年来,视觉显著性已经获得了广泛关注。已经表明:视觉显著性在人识别、视觉追踪、图片捕捉、机器人导航和视觉问答等广泛应用上都很有效。当涉及到基于图像的显著性目标检测时,有两个大问题需要被解决:如何在杂乱的背景下突出显著性目标和如何保护显著性目标的边界。然而,鉴于显著性目标可能会与背景干扰器共享一些类似的视觉属性并且有时多个显著性目标部分或完全相互重叠的事实,显著性检测在计算机视觉任务中仍然具有挑战性。最近基于cnn的方法[18,22,10,33,29]已经成功地缓解了上述问题,并引起了一种重要的神经网络结构的激增。通常,标准的卷积神经网络是由重复的卷积层组成的,然后跟着空间池化。更深的层次以更丰富的语义表示进行编码,尽管牺牲了空间分辨率,而较浅的层包含更精细的结构。 现有的显著性检测方法[18,10,33]试图将层次特征相结合,同时捕获独特的客观性和详细信息。然而,这些方法通常将分析集中在如何有效地组合特征上。经常被忽视的是,直接将连接或元素化操作应用于不同的特征映射是次优的,因为有些映射过于混乱,在检测和分割显著对象时会引入误导性的信息。该问题如图1所示。现有的显著性检测方法[18,10,33]试图将层次特征,同时将捕获的独特的客观性和详细信息相结合。然而,这些方法通常将分析集中在如何大体上有效地组合特征上。经常被忽视的是,直接将连接或元素化操作应用于不同的特征映射是次优的,因为有些映射过于混乱,在检测和分割显著对象时会引入误导性的信息。该问题如图1所示。

因此,从全局的角度,我们提出了一种新的递归定位网络(RLN),它由两个模块组成:一个初始上下文加权模块(CWM)和递归模块(RM)。CWM旨在预测空间响应映射,以自适应地权重化每个位置的特征映射,它可以定位每个给定输入最关注的部分。具体来说,CWM位于每个卷积块的侧输出结果的顶部,它以输出特征映射作为输入,并基于多尺度上下文信息学习每个像素的权重。然后将权重用于每个特征图来产生一个加权空间表示。CWM可以过滤出分散注意力和混乱的背景,并使突出的物体脱颖而出。此外,还提出了一种递归结构,以随着时间逐步细化预测显著性图。它建立循环连接,将某些块的输出传播到其输入端,以便在不同层的训练过程中利用上下文线索。

其次,从局部的角度,我们采用边界细化网络(BRN)来恢复详细的边界信息。BRN将初始RGB图像和显著性映射作为输入。显著性映射作为先验映射,可以帮助学习过程中产生更准确的预测。BRN可以预测每个像素的n×n个传播系数图,它表示中心点与其相邻的n×n个点之间的关系。对于每个像素,相应的系数都是位置感知的,并且可以自适应地学习n×n个邻居的局部上下文信息。

综上所述,我们的贡献如下:

我们提出了一种新的局部化到细化网络,前者递归地关注各种场景的空间分布,以帮助更好地定位显著性对象,后者有助于通过每个像素与其邻居之间的关系来细化显著性映射。

在递归定位网络中,对加权特征图在每个位置采用上下文模块。此外,还提出了一种循环机制来收集上下文信息来迭代地改进卷积特征。在边界细化网络中,采用了一个细化模块,通过传播效率来学习局部上下文信息。

与所有当前最好的结果相比,我们所提出的模型在ECSSD、THUR15K、DUT-OMRON、HKU-IS和DUTS基准数据集上都取得了最好的性能。

2、相关工作

为了解决显著性检测的问题,人们提出了各种方法。早期的研究[23,12,31,32,11,19,14,4,25]集中于低级的视觉特征,如中心偏置,对比先验和背景先验。近年来,基于深度学习的方法[26,36,17,28,15,16,18,22,10,29,33,3]已经取得了显著的进展,它可以广泛地分为基于区域的和基于全卷积网络(FCN)的方法。下面,我们简要回顾了这两类方法的最新进展。

2.1 基于区域的显著性

基于区域的方法利用每个图像块作为进行显著性预测的基本处理单元。在[17]中,Li等人。通过利用上下文信息,利用从深度CNN中提取的多尺度特征。采用类化网络来推断每个图像段的显著性分数。在[36]中,赵等人提出了一种用于显著性目标检测的多上下文深度学习结构。他们试图通过联合优化全局和局部上下文信息来建模每个超像素。在[26]中,提出了一种结合图像补丁和候选对象的两阶段训练策略。结合局部特征和全局线索,以生成显著对象区域的加权和。Lee等人[16]利用双流框架,具有从VGG-net中提取的高级特征描述符和低级启发式特征,如颜色直方图和Gabor响应。他们提出了一种具有全连接层的神经网络来评估每个区域的显著性。

2.2 基于全卷积网络的显著性

虽然相比基于手工制作特征的方法,基于区域的深度学习方法大大提高了性能,但它们在为每个图像补丁分配一个显著性标签时忽略了重要的空间信息。此外,这些方法是耗时的,因为整个网络运行了多次,以预测图像中的所有补丁。为了克服这一问题,采用的是最流行的神经网络之一——全卷积网络。现有的几项工作主要基于以下几个方面来改进显著性检测任务。

跳跃连接(Skip Connections) 跳跃连接的目标是为具有较低层次的网络添加更深的层,并集成多分辨率的显著性预测。在[18]中,提出了一种多尺度的FCN来捕获有效的语义特征和视觉对比信息来进行显著性推理。侯等人在[10]中,通过将高级特性转换为较浅的侧输出层来引入短连接。每层的多尺度特征图可以帮助定位显著性区域,同时可帮助恢复详细的结构。张等人[33]学会了在每个分辨率上聚合多层次的特征映射,并以递归的方式预测显著性映射。在[29]中,王等人提出了一个阶段细化模型和金字塔池化模块,以包括局部和全局上下文信息的显著性预测。特别是,利用阶段模型逐步向预测的特征图添加较低级的详细特征。上述工作试图利用中枢神经网络的层次特征来进行预测。然而,当低级特征直接与高级特征结合时,总会包含一些杂乱的信息。为了解决这个问题,我们提出了一个类似inception的上下文权重模块来净化卷积特征。

递归结构(Recurrent Structure)递归结构通过迭代地聚合上下文信息,可以帮助减少预测错误。 Kuen[15]首先采用卷积反卷积网络来生成一个粗糙的显著性图。然后利用空间变换器和递归网络单元迭代寻找专注图像子区域以进行显著性细化。刘和韩[22]提出了一种基于全卷积网络的端到端方法。采用层次递归CNN,通过整合局部上下文信息,逐步恢复显著性图的图像细节。在[28]中,王等人。利用预测的显著性图作为反馈信号,作为显著性信号之前,通过修正之前的误差,自动学习改进显著性预测。与这些工作不同的是,我们提出了一个块式递归模块,它可以在多个时间步长内结合某些卷积块的输出和输入特征,从而合并上下文信息。

[if !supportLists]3. [endif]The Proposed Method

在这一节中,我们将详细阐述所提出的显著性检测框架。我们首先在3.1节中描述了全局递归局部化网络(RLN),然后在3.2节中给出了局部边界细化网络(BRN)的详细描述。我们所提出的网络的整体架构如图2所示。

3.1. Recurrent Localization Network 

3.1.1 Base Network

我们解决了基于全卷积网络的显著性检测问题。我们提出的方法是基于ResNet-50网络[24]。具体地说,我们删除了原始的全局平均池化,全连接层和softmax损失层,并保留了ResNet-50网络中的底部卷积块。基础网络由具有不同输出尺寸的重复性残差构建块组成。对于输入图像I,基础网络会生成5个特征图(f1、f2、……、f5)。每个映射都由一个残差的卷积块生成。从Conv5得到的特征映射f5的空间维数最小,而f1的空间维数最大。为了有效的计算,我们通过在第k个残块的输出特征图fk后面应用一个带有128个通道的3×3卷积层,得到了第k个特征映射fkd(k∈{3,4,5})以减少维数。我们将特征映射fkd(k∈{4,5})进行上采样到与f3d相同的大小。然后对所有的特征图fkd进行元素级的乘法,后面跟着具有128个通道的3×3卷积层和2个通道的1×1卷积层来生成预测图S。我们设置预测图中输出通道的数量等于可能的标签的数量。S的每个通道都对应于一个置信度量,用来预测两个类中的一个类中的每个空间位置。最后,我们使用双线性插值直接上采样S来匹配输入图像的大小。

3.1.2 Network Architecture

大多数现有的显著性检测方法通常都涉及到多尺度卷积特征的组合,这是由于不同层的CNNs通常携带丰富的表达,从低级视觉特征到高级识别信息。然而,如前所述,如果采用某些“坏”特征,则在集成特征之间存在限制,因为简单地合并卷积特征可以使“坏”特征图中的噪声无限地传递到预测层。基于上述观察结果的动机,我们提出了一种基于初始架构的上下文加权机制来调制正在传递的特征。特别地,采用递归结构来学习上下文感知特征,它可以以反馈的方式将每个块的输出连接到同一块的输入。

Inception-like Contextual Weighting Module.我们的模块的灵感来自于上下文重加权网络[13]在图像地理定位中的成功。为了获得每个位置的空间响应图,我们首先在第k个残差块生成的特征图fk后面连接一个下采样层。然后应用一个核大小为m的卷积层在局部特征上滑动一个m×m的空间窗口,如图3所示。因此,上下文信息可以包含在隐藏的上下文过滤器中。为了获得多尺度的上下文信息,我们使用了三个不同大小的核的上下文过滤器(3×3、5×5、7×7)。每个过滤器生成一个大小为W×H×C的激活图,然后是L2归一化层。然后,我们将这些激活映射连接起来,形成特征fkcat。

为了计算上下文加权响应映射Mk,我们在fkcat后面利用带有一个输出通道的卷积层,它被表示为Mk = W ∗ fk cat + b,

其中,W表示核,b表示偏置参数。所得到的加权响应图的大小为W×H,其中该图中的每个值决定了每个空间位置的重要性。然后在Mk空间上应用softmax函数,得到最终的加权响应图,Φk(x, y) = exp(Mk(x, y)) P(x′ ,y′) exp(Mk(x′ , y′)) ,

其中,Φk(x、y)表示(x、y)处的标准化响应值,而k是残差块的索引。直观地说,如果像素i在位置(x、y)处突出,则应为响应映射中相关的像素分配一个更高的值。最后,将权重图上采样得到Φku,并应用于特征fkd,Fk(c) = Φuk ◦ fkd(c),

其中,c表示第c个特征通道。我们使用◦来表示按元素进行乘积操作。注意,Φku是跨fkd的所有通道共享。

Recurrent Module.上下文信息[22,36,29]在显著性检测中已被证明是有效的。较大的上下文通常捕获对象之间的全局空间关系,而较小的上下文则关注局部外观,两者都有助于显著性检测。在本文中,我们提出了一种新的递归模块,增加了时间步长的优势,使整个网络能够随着时间的推移在更大的邻域整合上下文知识,并通过在Resnet-50的内部结合语义线索和详细信息块作为一种细化机制。我们将ResNet-50中的每个块作为基本的递归单元,随着时间的推移,它在我们的结构中共享相同的权重层参数。当前块的状态由当前前馈输入和相同块的先前状态决定。具体地说,块hk在时间步骤t的状态通过把从同一块在时间步骤t-1的先前预测hk(t−1)和在时间步骤t−1,它的前一块(k-1)的当前输出hk−1(t)的输出特征图作为输入计算得到。


其中,符号∗表示卷积操作。fk(·)是多个特定功能的组合,包括批归一化和ReLU激活功能。fu(。)表示上采样操作。wfk和wrk是对于组块K的前馈和递归权重。bk表示组块k的偏差。注意,wfk被同一块共享,在每个块上多次使用,以减少内存消耗。以不同的时间步长穿过相同的块独立地学习wrk,以便在时间步骤t−1从当前块学习合并的上下文信息的特定转换。

图4表示伴随着深度和时间维度的前向和反向传播过程中的整体递归结构(这里设置t=1)。所提出的递归结构有几个优点。首先,通过在不同的时间步长上采用相同块的循环连接,循环结构能够用隐藏的卷积单元吸收上下文和结构信息。其次,通过在每一层多次共享权重,新的架构可以增加传统CNNs的深度,而不显著增加参数的总数。

3.2 Boundary Refifinement Network 

RLN可以通过过滤掉有噪声的部分来聚合有用的特征,并通过整合相关信息来逐步细化预测。然而,沿着显著性目标边界的一些详细的结构仍然缺失。为了恢复连续的细节以获得空间精度,我们采用了一个局部边界细化网络(BRN)[35]来自适应地校正预测。

BRN的细节如图5所示。由RLN和原始RGB图像生成的显著性图被连接起来作为BRN的输入。

对于每个位置,BRN的目标是学习一个n×n传播系数图,用它可以将局部上下文信息聚合到中心像素。对于位置i,BRN将首先输出一个传播系数向量,然后它将被展开为一个n×n的正方形。位置i的细化映射将由i的所有邻居的传播映射和显著性映射的乘积和生成。

其中vdi是第d个邻居在位置i的系数向量,n×n表示局部邻域的大小。sdi和s‘i分别表示细化操作前后位置i的预测向量。BRN中的每个位置都是位置自适应的,带有不同的传播系数,可以通过不用明确监督的反向传播自动学习。

Implementation details.如表2所示,BRN由7个卷积层组成,每一层的核大小为3×3。ReLU非线性操作是在两个卷积层之间执行。我们不用池化层,也不在卷积层使用大步长,以在输入和输出特征图之间保持相同的分辨率。

传播矩阵可以建模邻居之间的空间关系,以帮助细化由RLN生成的预测映射。与初始的显著性图相比,就视觉外观而言,细化的特征图不应变化太大。为了实现这一点,我们在BRN中采用了以下初始化:

其中,l∈{1,2,……,L}表示BRN的第1个卷积层。kl是由高西加分布δ∼N(µ,σ2)初始化的卷积核,其中µ=0,σµ=0.1.z是每个核中的位置,c表示信道的索引。我们将第l层(l<L)中的所有偏差参数设置为0。对于第L层,偏差全部设置为0,但n×n邻域中心位置的偏置值设置为1。在此初始化后,某个像素的显著性预测将主要受到传播图的中心系数的影响,也会受到其他系数的影响。

4. Experiments 

4.1. Experimental Setup

Evaluation Datasets.我们在五个流行的数据集上评估了提出的框架:ECSSD[31],DUTOMRON[32],THUR15K[5]、HKU-IS[17]和DUTS[27]。ECSSD包含1000个自然和复杂的图像,具有像素精确的地面真实注释。图像是从互联网中手动选择的。DUT-OMRON有更有挑战性的图像和5168张图像。所有的图像都被调整大小至最大尺寸为400像素长。THUR15K包括6232张分类图像,包括“蝴蝶”、“咖啡”、“狗”、“长颈鹿”和“飞机”。HKU-IS有4447张图像,通过至少符合以下三个标准中的一个来选择:多个具有重叠的突出对象、接触图像边界的对象和低色对比度。DUTS是最新发布的数据集,包含10553张用于训练的图像和5019张用于测试的图像。培训和测试集都包含非常复杂的场景。

Evaluation Criteria.我们利用三种评估指标来评估我们的方法与其他显著的目标检测方法的性能,包括精度召回(PR)曲线、f测量分数和平均绝对误差(MAE)。给定一个连续值归一化为0和255范围的显著性映射,我们通过使用每一个可能的固定整数阈值来计算相应的二进制映射。然后,我们计算了所有二进制映射的精度/召回率对,以根据给定数据集中所有显著性映射的平均值来绘制PR曲线。此外,我们利用f度分数来评估显著性地图的质量,这是由精度和召回的加权组合表示的。

γ设置为0.3,以更加强调[1]中建议的召回的精度。鉴于显著性图S和地面真值掩模G,可以通过S和G之间的元素级差来计算MAE分数,

其中,S(i、j)表示位置(i、j)处的显著性得分,W和H为宽度和高度。

Implementation Details.我们已经在一个英伟达GTX1080GPU上实现了我们的网络。预先训练好的ResNet-50用于初始化RLN网络中的卷积层。第1版到第5版区块)。其他的卷积参数都是随机分配的。我们在DUTS的训练集上训练我们的模型,并在其测试集和其他数据集上进行测试。所有的训练和测试图像的大小都被调整为384×384,作为到RLN和480×480到BRN的输入。我们不使用验证集,并训练模型,直到它的训练损失收敛。我们使用SGD方法来训练我们的网络与权重衰减0.0005。RLN学习率设置为1e-10,BRN学习率设置为1e-8。我们使用软最大熵损失来训练这两个网络。对于递归结构,时间步长t设置为3,我们在地面真实值和预测图之间使用三个顶级监督。

4.2. Performance Comparison

我们比较了该算法与13种最先进的算法的比较,包括基于深度学习的方法以及其他非深度竞争对手,DRFI [12], BL [25], LEGS [26], MDF [17], MCDL [36], DS [20], DCL [18], DHS [22], RFCN [28], KSR [30], UCF [34], A�mulet [33] and SRM [29].

Quantitative Evaluation.定量评估。首先,我们将PR曲线、F度曲线和F分数与其他方法进行比较,如图7所示。在所有的数据集和评估指标中,该方法的性能优于其他方法。此外,我们还在表1中显示了f-度量值和MAE分数。正如我们所看到的,我们的方法可以在所有数据集中生成最好的分数。更多的结果可以在补充材料中找到。

Visual Comparison.为了定性地评价所提出的方法,我们可视化了关于图8中上述方法的一些例子显著性图。这些例子在各种场景中显示,包括多个突出的对象(第1-2行),小的对象(第3行)、接触图像边界的对象(第4行)以及与背景颜色相似的突出对象(第5-7行)。从这幅图中,我们可以看到,我们的方法可以产生更准确的显著性地图,这是更接近地面真相掩模。

4.3. Ablation Study

在这节中,我们提供了关于所提议的网络中每个组件的贡献的结果。

Performance of the RLN and BRN.为了研究所提出的递归定位网络(RLN)和边界细化网络(BRN)的有效性,我们在所有五个数据集上进行了消融实验。我们利用第3.1.1节中描述的基础网络作为基线模型。F-测量和MAE评分的总体结果见表3。基于基线网络,我们分析了每个提出的组件的性能,即类似初始的上下文加权模块(CWM)、递归模块(RM)和BRN。

我们首先评估CWM,整体性能可以分别提高F-seath和MAE分数。性能的提高得益于CWM在过滤噪音和杂乱中所发挥的作用背景信息。此外,通过RM,显著性映射可以捕获上下文依赖性,以区分令人混淆的局部像素,因此可以通过网络来纠正错误。这两个模块都可以帮助网络更准确地定位突出对象,并删除后台的干扰器。最后的BRN也可以显示出改进,从学习的传播中得到,以帮助自适应地细化由RLN生成的预测映射的边界。我们还提供了RLN和BRN的示例。如图6所示,通过CWM、RM和BRN的连接,该方法可以得到更准确的结果。

Performance of the controlled experiments.我们将我们提出的RLN与DUTS数据集上的不同变体进行了比较,如图9所示。“RM”-k表示在我们的实验中有k个循环模块。“RM-1*”表示t=0和t=1之间不共享任何参数。“RM-1**”表示我们在=1只损失一次RLN。可以看出,性能会随着时间的增加和步长而增加。此外,对每个时间步长和循环机制的最高监督对整个网络都很重要。

5. Conclusion

在本文中,我们提出了一种新的定位到细化网络,从全局和局部视图检测显著目标。递归定位网络(RLN)通过权重响应图可以学习更好地定位显著性目标,为了随着时间迭代地细化每个卷积块,我们又提出了一个新的循环结构。边界细化网络(BRN)可以根据每个像素和邻居的空间关系来优化预测映射。这是通过由一个小的深度网络学习的传播系数图来实现的。实验评估验证,该模型可以在五个基准数据集和所有流行的评估指标上一致地提高当前最好的性能。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,427评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,551评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,747评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,939评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,955评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,737评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,448评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,352评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,834评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,992评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,133评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,815评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,477评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,022评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,147评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,398评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,077评论 2 355

推荐阅读更多精彩内容