基于MASK RCNN算法實現(xiàn)瑕疵圖像識別(準(zhǔn)備環(huán)境)

目前圖像識別領(lǐng)域卫键,兩步法最炙手可熱的圖像處理模型就是Mask RCNN了炼七,應(yīng)用該模型可以在較為廣泛的工業(yè)領(lǐng)域?qū)崿F(xiàn)圖像化檢測缆巧。近期我們實現(xiàn)了該模型在金屬加工產(chǎn)品線上的質(zhì)量檢測識別,取得了較好的效果豌拙。

Github原代碼地址:

https://github.com/matterport/Mask_RCNN?下載zip即可陕悬,該模型的backbone是Resnet101

注意該原代碼沒有預(yù)訓(xùn)練的模型,如果需要的話按傅,預(yù)訓(xùn)練模型在這里:

https://github.com/matterport/Mask_RCNN/releases? 名稱是mask_rcnn_balloon.h5 目前最新的版本是2.1

關(guān)于該代碼部署的環(huán)境:經(jīng)過實際應(yīng)用發(fā)現(xiàn)捉超,如果沒有GPU、或者其他高性能服務(wù)器的話唯绍,至少也要達(dá)到如下標(biāo)準(zhǔn):CentOS 7 建議安裝 anacoda環(huán)境拼岳,便于管理。64G內(nèi)存况芒,64 core vCPU惜纸,硬盤空間不能太小,因為每輪Epoch訓(xùn)練都會產(chǎn)生新的模型绝骚,單個模型大小256M左右耐版,多輪調(diào)試、訓(xùn)練會占用大量硬盤空間压汪。

下面先說總體步驟:

打開冰箱粪牲,放入大象,關(guān)上冰箱 止剖。腺阳。。

正確的步驟是 :

1 調(diào)試并修改代碼穿香;2 制作訓(xùn)練舌狗、測試、驗證數(shù)據(jù)集扔水;3 開始訓(xùn)練,4 檢驗?zāi)P停? 應(yīng)用模型朝氓。

一步一步說

先說環(huán)境魔市,如果你要在自己的筆記本上跑跑代碼,看看效果赵哲,反而麻煩一些待德。主要在于里面的pycocotools是需要VC2005的,安裝起來很麻煩枫夺。如果是在服務(wù)器将宪,linux下安裝反而沒有什么問題。按照代碼說明的那些包是不太夠的。

????我的安裝環(huán)境如下:Python3.5 tensorflow1.14

_libgcc_mutex 0.1 main

absl-py? ? ? ? ? ? ? ? ? 0.8.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

alabaster? ? ? ? ? ? ? ? 0.7.12? ? ? ? ? ? ? ? ? pypi_0? ? pypi

astor? ? ? ? ? ? ? ? ? ? 0.8.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

attrs? ? ? ? ? ? ? ? ? ? 19.3.0? ? ? ? ? ? ? ? ? pypi_0? ? pypi

babel? ? ? ? ? ? ? ? ? ? 2.7.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

backcall? ? ? ? ? ? ? ? ? 0.1.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

bleach? ? ? ? ? ? ? ? ? ? 3.1.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

ca-certificates? ? ? ? ? 2019.10.16? ? ? ? ? ? ? ? ? ? 0?

certifi? ? ? ? ? ? ? ? ? 2018.8.24? ? ? ? ? ? ? ? py35_1?

chardet? ? ? ? ? ? ? ? ? 3.0.4? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

cycler? ? ? ? ? ? ? ? ? ? 0.10.0? ? ? ? ? ? ? ? ? pypi_0? ? pypi

cython? ? ? ? ? ? ? ? ? ? 0.29.13? ? ? ? ? ? ? ? ? pypi_0? ? pypi

decorator? ? ? ? ? ? ? ? 4.4.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

defusedxml? ? ? ? ? ? ? ? 0.6.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

docutils? ? ? ? ? ? ? ? ? 0.15.2? ? ? ? ? ? ? ? ? pypi_0? ? pypi

entrypoints? ? ? ? ? ? ? 0.3? ? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

gast? ? ? ? ? ? ? ? ? ? ? 0.3.2? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

google-pasta? ? ? ? ? ? ? 0.1.7? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

grpcio? ? ? ? ? ? ? ? ? ? 1.24.3? ? ? ? ? ? ? ? ? pypi_0? ? pypi

h5py? ? ? ? ? ? ? ? ? ? ? 2.10.0? ? ? ? ? ? ? ? ? pypi_0? ? pypi

idna? ? ? ? ? ? ? ? ? ? ? 2.8? ? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

imageio? ? ? ? ? ? ? ? ? 2.6.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

imagesize? ? ? ? ? ? ? ? 1.1.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

imgaug? ? ? ? ? ? ? ? ? ? 0.3.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

importlib-metadata? ? ? ? 0.23? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

ipykernel? ? ? ? ? ? ? ? 5.1.3? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

ipyparallel? ? ? ? ? ? ? 6.2.4? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

ipython? ? ? ? ? ? ? ? ? 7.9.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

ipython-genutils? ? ? ? ? 0.2.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

ipywidgets? ? ? ? ? ? ? ? 7.5.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

jedi? ? ? ? ? ? ? ? ? ? ? 0.15.1? ? ? ? ? ? ? ? ? pypi_0? ? pypi

jinja2? ? ? ? ? ? ? ? ? ? 2.10.3? ? ? ? ? ? ? ? ? pypi_0? ? pypi

jsonschema? ? ? ? ? ? ? ? 3.1.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

jupyter-client? ? ? ? ? ? 5.3.4? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

jupyter-core? ? ? ? ? ? ? 4.6.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

jupyter-tensorboard? ? ? 0.1.10? ? ? ? ? ? ? ? ? pypi_0? ? pypi

keras? ? ? ? ? ? ? ? ? ? 2.2.2? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

keras-applications? ? ? ? 1.0.4? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

keras-preprocessing? ? ? 1.0.2? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

kiwisolver? ? ? ? ? ? ? ? 1.1.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

libedit? ? ? ? ? ? ? ? ? 3.1.20181209? ? ? ? hc058e9b_0?

libffi? ? ? ? ? ? ? ? ? ? 3.2.1? ? ? ? ? ? ? ? hd88cf55_4?

libgcc-ng? ? ? ? ? ? ? ? 9.1.0? ? ? ? ? ? ? ? hdf63c60_0?

libstdcxx-ng? ? ? ? ? ? ? 9.1.0? ? ? ? ? ? ? ? hdf63c60_0?

markdown? ? ? ? ? ? ? ? ? 3.1.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

markupsafe? ? ? ? ? ? ? ? 1.1.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

matplotlib? ? ? ? ? ? ? ? 3.0.3? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

mistune? ? ? ? ? ? ? ? ? 0.8.4? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

more-itertools? ? ? ? ? ? 7.2.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

nbconvert? ? ? ? ? ? ? ? 5.6.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

nbformat? ? ? ? ? ? ? ? ? 4.4.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

ncurses? ? ? ? ? ? ? ? ? 6.1? ? ? ? ? ? ? ? ? he6710b0_1?

networkx? ? ? ? ? ? ? ? ? 2.4? ? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

nose? ? ? ? ? ? ? ? ? ? ? 1.3.7? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

notebook? ? ? ? ? ? ? ? ? 6.0.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

numpy? ? ? ? ? ? ? ? ? ? 1.17.3? ? ? ? ? ? ? ? ? pypi_0? ? pypi

opencv-python? ? ? ? ? ? 4.1.1.26? ? ? ? ? ? ? ? pypi_0? ? pypi

opencv-python-headless? ? 4.1.1.26? ? ? ? ? ? ? ? pypi_0? ? pypi

openssl? ? ? ? ? ? ? ? ? 1.0.2t? ? ? ? ? ? ? h7b6447c_1?

packaging? ? ? ? ? ? ? ? 19.2? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pandocfilters? ? ? ? ? ? 1.4.2? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

parso? ? ? ? ? ? ? ? ? ? 0.5.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pexpect? ? ? ? ? ? ? ? ? 4.7.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pickleshare? ? ? ? ? ? ? 0.7.5? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pillow? ? ? ? ? ? ? ? ? ? 6.2.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pip? ? ? ? ? ? ? ? ? ? ? 19.3.1? ? ? ? ? ? ? ? ? pypi_0? ? pypi

prometheus-client? ? ? ? 0.7.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

prompt-toolkit? ? ? ? ? ? 2.0.10? ? ? ? ? ? ? ? ? pypi_0? ? pypi

protobuf? ? ? ? ? ? ? ? ? 3.10.0? ? ? ? ? ? ? ? ? pypi_0? ? pypi

ptyprocess? ? ? ? ? ? ? ? 0.6.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pycocotools? ? ? ? ? ? ? 2.0.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pygments? ? ? ? ? ? ? ? ? 2.4.2? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pyparsing? ? ? ? ? ? ? ? 2.4.2? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pyrsistent? ? ? ? ? ? ? ? 0.15.5? ? ? ? ? ? ? ? ? pypi_0? ? pypi

python? ? ? ? ? ? ? ? ? ? 3.5.6? ? ? ? ? ? ? ? hc3d631a_0?

python-dateutil? ? ? ? ? 2.8.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pytz? ? ? ? ? ? ? ? ? ? ? 2019.3? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pywavelets? ? ? ? ? ? ? ? 1.1.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pyyaml? ? ? ? ? ? ? ? ? ? 5.1.2? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

pyzmq? ? ? ? ? ? ? ? ? ? 18.1.0? ? ? ? ? ? ? ? ? pypi_0? ? pypi

qtconsole? ? ? ? ? ? ? ? 4.5.5? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

readline? ? ? ? ? ? ? ? ? 7.0? ? ? ? ? ? ? ? ? h7b6447c_5?

requests? ? ? ? ? ? ? ? ? 2.22.0? ? ? ? ? ? ? ? ? pypi_0? ? pypi

scikit-image? ? ? ? ? ? ? 0.15.0? ? ? ? ? ? ? ? ? pypi_0? ? pypi

scipy? ? ? ? ? ? ? ? ? ? 1.3.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

send2trash? ? ? ? ? ? ? ? 1.5.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

setuptools? ? ? ? ? ? ? ? 40.2.0? ? ? ? ? ? ? ? ? py35_0?

shapely? ? ? ? ? ? ? ? ? 1.6.4.post2? ? ? ? ? ? ? pypi_0? ? pypi

six? ? ? ? ? ? ? ? ? ? ? 1.12.0? ? ? ? ? ? ? ? ? pypi_0? ? pypi

snowballstemmer? ? ? ? ? 2.0.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

sphinx? ? ? ? ? ? ? ? ? ? 2.2.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

sphinxcontrib-applehelp? 1.0.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

sphinxcontrib-devhelp? ? 1.0.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

sphinxcontrib-htmlhelp? ? 1.0.2? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

sphinxcontrib-jsmath? ? ? 1.0.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

sphinxcontrib-qthelp? ? ? 1.0.2? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

sphinxcontrib-serializinghtml 1.1.3? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

sqlite? ? ? ? ? ? ? ? ? ? 3.30.1? ? ? ? ? ? ? h7b6447c_0?

tensorboard? ? ? ? ? ? ? 1.14.0? ? ? ? ? ? ? ? ? pypi_0? ? pypi

tensorflow? ? ? ? ? ? ? ? 1.14.0? ? ? ? ? ? ? ? ? pypi_0? ? pypi

tensorflow-estimator? ? ? 1.14.0? ? ? ? ? ? ? ? ? pypi_0? ? pypi

termcolor? ? ? ? ? ? ? ? 1.1.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

terminado? ? ? ? ? ? ? ? 0.8.2? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

testpath? ? ? ? ? ? ? ? ? 0.4.2? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

tk? ? ? ? ? ? ? ? ? ? ? ? 8.6.8? ? ? ? ? ? ? ? hbc83047_0?

tornado? ? ? ? ? ? ? ? ? 6.0.3? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

traitlets? ? ? ? ? ? ? ? 4.3.3? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

urllib3? ? ? ? ? ? ? ? ? 1.25.6? ? ? ? ? ? ? ? ? pypi_0? ? pypi

wcwidth? ? ? ? ? ? ? ? ? 0.1.7? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

webencodings? ? ? ? ? ? ? 0.5.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

werkzeug? ? ? ? ? ? ? ? ? 0.16.0? ? ? ? ? ? ? ? ? pypi_0? ? pypi

wheel? ? ? ? ? ? ? ? ? ? 0.31.1? ? ? ? ? ? ? ? ? py35_0?

widgetsnbextension? ? ? ? 3.5.1? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

wrapt? ? ? ? ? ? ? ? ? ? 1.11.2? ? ? ? ? ? ? ? ? pypi_0? ? pypi

xz? ? ? ? ? ? ? ? ? ? ? ? 5.2.4? ? ? ? ? ? ? ? h14c3975_4?

zipp? ? ? ? ? ? ? ? ? ? ? 0.6.0? ? ? ? ? ? ? ? ? ? pypi_0? ? pypi

zlib? ? ? ? ? ? ? ? ? ? ? 1.2.11? ? ? ? ? ? ? h7b6447c_3?

順便說一下:為了后期的評估方便较坛,我同時開啟了服務(wù)器端jupyter和基于jupyter的tensorboard印蔗。實現(xiàn)方法就不贅述了,網(wǎng)上一搜一大把丑勤。建議大家也要開啟华嘹,方便模型后期的調(diào)試和評估。另外雖然裝了anacoda法竞,但是裝包的時候能用pip就用pip耙厚,混裝會出現(xiàn)很多莫名其妙的沖突,教訓(xùn)深刻岔霸。

裝好了之后薛躬,可以登陸jupyter notebook上看看demo,如果能跑完到演示圖片識別呆细,說明程序已經(jīng)沒問題型宝,可以開始改了!

原代碼是在高性能侦鹏、多gpu設(shè)備上實現(xiàn)的诡曙,我沒有那些好設(shè)備,所以必須修改略水,關(guān)鍵調(diào)整是

如果沒有GPU价卤,必須要將該參數(shù)改為1,即使擁有GPU渊涝,增加IMAGES_PER_GPU數(shù)值也要小心慎璧,很容易在訓(xùn)練模型的時候跑死機(jī)或者程序閃退。

看注釋就明白原作者還是很土豪的跨释。

接下來就是理解原代碼的結(jié)構(gòu)并且改造屬于自己的模型了胸私。

核心代碼放到mrcnn文件夾里,其實也就用這里面即可鳖谈。samples文件夾里的例子可以作為自己代碼修改的基礎(chǔ)和參考岁疼,也很有用

簡單的說config.py主要進(jìn)行基礎(chǔ)參數(shù)的定義,如果你選擇了 from mrcnn.config import Config缆娃,然后在自己的class中集成絕大部分的config定義捷绒,那么一定要看看這里的設(shè)置是不是真的屬于你需要的。上述的 IMAGES_PER_GPU贯要,還有NUM_CLASSES? STEPS_PER_EPOCH 等等暖侨,都要注意匹配。

model.py是這個算法的精髓部分崇渗,基于tensorflow和keras實現(xiàn)訓(xùn)練和識別字逗,算法理解將在后面詳述京郑。

utils.py實現(xiàn)了圖像的準(zhǔn)確評估,比如mAP IOU的計算等等葫掉,非常方便些举。

visualize.py 實現(xiàn)了圖像的檢測的可視化展現(xiàn),也是非常有效的工具挖息。

parallel_model.py 多GPU專用(土豪專用)它把模型做多個copy到每一個GPU里金拒,然后把輸入數(shù)據(jù)也切片到每一個模型copy里,當(dāng)然最終輸出會重新合并套腹,并且基于合并后的輸出給出loss值绪抛。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市电禀,隨后出現(xiàn)的幾起案子幢码,更是在濱河造成了極大的恐慌,老刑警劉巖尖飞,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件症副,死亡現(xiàn)場離奇詭異,居然都是意外死亡政基,警方通過查閱死者的電腦和手機(jī)贞铣,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來沮明,“玉大人辕坝,你說我怎么就攤上這事〖鼋。” “怎么了酱畅?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長江场。 經(jīng)常有香客問我纺酸,道長,這世上最難降的妖魔是什么址否? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任餐蔬,我火速辦了婚禮,結(jié)果婚禮上佑附,老公的妹妹穿的比我還像新娘用含。我一直安慰自己,他們只是感情好帮匾,可當(dāng)我...
    茶點故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著痴鳄,像睡著了一般瘟斜。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天螺句,我揣著相機(jī)與錄音虽惭,去河邊找鬼。 笑死蛇尚,一個胖子當(dāng)著我的面吹牛芽唇,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播取劫,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼匆笤,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了谱邪?” 一聲冷哼從身側(cè)響起炮捧,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎惦银,沒想到半個月后咆课,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡扯俱,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年书蚪,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片迅栅。...
    茶點故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡殊校,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出库继,到底是詐尸還是另有隱情箩艺,我是刑警寧澤,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布宪萄,位于F島的核電站艺谆,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏拜英。R本人自食惡果不足惜静汤,卻給世界環(huán)境...
    茶點故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望居凶。 院中可真熱鬧虫给,春花似錦、人聲如沸侠碧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽弄兜。三九已至药蜻,卻和暖如春瓷式,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背语泽。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工贸典, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人踱卵。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓廊驼,卻偏偏與公主長得像,于是被迫代替她去往敵國和親惋砂。 傳聞我的和親對象是個殘疾皇子妒挎,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內(nèi)容