用AI「馴服」人類幼崽:這個奶爸找到了硬核帶娃的樂趣

2021-01-16 澎湃新聞

選自medium

作者:Agustinus Nalwan

機器之心編譯

編輯:澤南、魔王、張倩

為了能安心看幾集 Netflix 劇,技術宅奶爸都做了些什麼……

長期以來,「奶爸」+「萌娃」一直是一個不被看好的組合,甚至有人說,「父愛如山體滑坡」。不信的話,以下都是證據:

眾所周知,人類幼崽似乎是臺永動機,在一天 24 小時任何時間段裡都有可能向你發難。你能讓自己睡個安穩覺的方法看來是在白天消耗他們的精力,因此人們想出了各種各樣的方法。

當然,並不是所有的奶爸都這麼不靠譜,也有人帶起娃來挺正常的,Agustinus Nalwan 就是其中之一。

Agustinus Nalwan 是 Medium 上的一位博主,曾經從事計算機視覺、3D / 動畫、遊戲開發等方面的工作,目前供職於澳洲最大的汽車交易平臺 carsale.com.au。

他有一個兩歲半的兒子,名叫 Dexie。Dexie 非常活潑,喜歡動物,尤其是老鷹,經常學老鷹在家裡飛來飛去。

孩子的這種舉動一般也就引起家長的「哈哈」一笑(有的會拍成短視頻發網上),但 Nalwan 可不是一般的家長,他一直在嘗試用技術增添帶娃的樂趣。去年三月份,Nalwan 就開發過一款具有玩具識別能力的系統,可以和兒子互動並根據他手裡的玩具播放相關視頻。

這個項目幫他拿到了英偉達「Jetson Project of the Month: Qrio – an interactive AI bot」活動的大獎,獎品是一臺英偉達 Jetson AGX Xavier。

Jetson AGX Xavier 的配置信息。

這是一種算力不小的開發者套件,曾被京東、美團、菜鳥的無人快遞車用作計算核心。鑑於 Jetson AGX Xavier 配置還不錯,Nalwan 決定用它來幫兒子做一個新玩具,實現他「展翅高飛」的夢想。

新玩具名叫 Griffin(神話中的獅鷲),最終實現效果是這樣的:

當然,奶爸也可以跟著一起玩:

或者自己玩:

這麼好的帶娃經驗當然要分享出來。在最近的一篇博客中,Nalwan 完整地介紹了他打造 Griffin 的完整過程,手頭有娃的可以參考一下。

傳說中獅身鷹首的 griffin。《哈利波特》中的 Gryffindor 學院意為金色的 griffin。

以下是 Nalwan「從零開始」構建整套姿態識別遊戲的歷程。

物料準備

要實現上圖中的效果,Griffin 需要具備以下模塊:

3D 遊戲引擎:藉助一個用 OpenGL 寫成的飛行模擬器生成帶有山脈、天空和 Griffin 的 3D 魔幻世界。

人體姿態估計:使用 OpenPose 姿態估計模型和 SSD 目標檢測模型來持續檢測玩家的身體姿態,作為系統的輸入,以控制 Griffin。

動作映射和手勢識別:將身體姿態轉化為有意義的動作和手勢,如抬起左 / 右翅膀、左右翻滾身體、起飛等。

通信系統:使用 socket 將姿態輸入送進 3D 遊戲引擎。

以下是整個系統所需要的硬體:

NVIDIA Jetson AGX Xavier:這是一個 GPU 驅動的小型嵌入式設備,用來運行以上所有模塊。它可以通過一個簡單的 HDMI 接口支持音視頻輸出。此外,他還有一個乙太網接口,方便聯網。你甚至可以插入滑鼠和鍵盤在該設備上進行開發和調試,因為它有一個功能齊全的 Ubuntu 18.04 OS。

TV(帶有 HDMI 輸入和內置揚聲器):作為遊戲引擎的顯示器。

攝像頭:我用的是 Sony IMX327。其實這裡只需要 224x224 的圖像解析度,因此也可以選低端一點的攝像頭。

Blu-Tack:把所有硬體拼接在一起。

Jetson AGX Xavier、 IMX327 攝像頭和 Blu Tack。

實現

構建 3D 遊戲引擎

為了更好地模擬飛行體驗,Griffin 系統將以第三人稱視角渲染 3D 世界。想像一下在 Griffin 正後方有一個攝像頭看著他所看的地方。為什麼不用飛行模擬器那樣的第一人稱視角呢?因為看到鷹的翅膀並同步移動自己的手臂,可以幫助 Dexie 快速學習如何控制這個遊戲,並擁有一個更沉浸式的體驗。

自行構建 3D 遊戲引擎並非易事,可能需要好幾周的時間。現在大多數開發者只使用專門的遊戲引擎,如 Unity 或 Unreal。但是很遺憾,我找不到可以在 Ubuntu OS/ARM 晶片組上運行的遊戲引擎。一種替代方法是找到在 OpenGL 上運行的開源飛行模擬器。這可以保證遊戲引擎能在 AGX 上運行,因為它支持 OpenGL ES(OpenGL 的輕量級版本)並且得到硬體加速。如果你不想遊戲引擎以龜速運行的話,則這是必要的條件。

幸運的是,我找到了一個滿足標準的 C++ 開源飛行模擬器,並做了以下修改:

我用基於目標的系統替換了基於按鍵的飛行控制系統。這樣我就可以不時地設置 Griffin 身體的目標旋轉角度,之後這一旋轉目標將通過手勢識別模塊自行設置,該模塊可以映射 Dexie 胳膊的方向。

我增強了靜態 3D 模型管理,以支持層級結構。原始的飛機模型是作為一個剛體移動的,它沒有移動的身體部位。但是 Griffin 有兩個翅膀,需要獨立於身體單獨運動。為此,我添加了兩個翅膀,使之作為身體之上的單獨 3D 模型。我可以單獨旋轉每個翅膀,也可以移動 Griffin 的身體,間接移動兩個翅膀。實現該目標的一種恰當方式是構建骨骼動畫系統,將身體部位組織為樹結構的形式。但是,由於我要處理的身體部位只有三個(身體和兩個翅膀),因此我可以選擇一種簡便的方式。為了編輯鷹和樹 3D 模型,我使用了一個免費易用的 3D 編輯工具 Blender。

在 Blender 中編輯鷹的 3D 模型。

我添加了 Griffin 起飛狀態的樹模型,以及無需重啟應用即可重啟遊戲的遊戲狀態。Griffin 有兩種狀態:站立(站在樹枝上)和飛翔。

我利用 libSFML 添加音效播放:當 Griffin 起飛時,會出現鷹的尖嘯和風聲。

構建人體姿態估計模塊

該模塊旨在檢測來自攝像頭輸入的人體姿態。具體而言,我們需要知道左 / 右手肘、左 / 右肩膀、脖子和鼻子的位置,才能駕馭 Griffin 的翅膀和身體,並觸發特定的姿勢。OpenPose 是一個流行的開源庫,並具備大量估計人體姿態、手部姿勢和面部特徵的 AI 模型。我使用的是人體姿態估計 COCO 模型,以 resnet18 作為骨幹特徵提取器。該模型可以實時檢測 18 個關節點,包括上述我們所需的 6 個點。

COCO 關節點圖。

這裡存在一個大問題:OpenPose 基於 PyTorch 框架構建,在 NVIDIA AGX Xavier 中運行速度很慢(4FPS),因為它無法利用重度優化的 TensorRT 框架。幸運的是,還有一個厲害的工具 torch2trt,它可以自動將 PyTorch 模型移植到 TensorRT 框架中!具體步驟是:安裝 OpenPose,將 PyTorch 轉換為 TensorRT,下載預訓練 resnet18 骨幹模型。

為了獲取來自攝像頭的視頻內容,我使用另一個庫 Jetcam。只需要四行代碼,就可以運行。

人體姿態估計。

這樣就得到了可以 100FPS 速度運行的人體姿態估計模塊!

經過一些測試後,我發現有時候這個模型會將隨機對象錯誤地識別為關節點(假正例,如下圖所示),這會給 Griffin 的動作控制帶來麻煩。

使用 Amazon SageMaker JumpStart 構建目標檢測模型

解決該問題的一種方式是添加一個輔助 AI 模型,用目標檢測模塊來提供人體邊界框,這樣就可以排除掉在邊界框以外檢測到的人體關節點了。此外,這些邊界框還可以幫助在一堆人中識別主要玩家,距離攝像頭最近的人應該是主要玩家。

在之前的項目中,我手動訓練過 SSDMobileNetV2 目標檢測模型。這次我選擇使用 Amazon SageMaker JumpStart,只需一鍵操作就可以從 TensorFlowHub 和 PyTorchHub 部署 AI 模型。這裡有 150 多個可選的模型,其中就有經過完全預訓練的 SSDMobileNetV2。

從 Amazon SageMaker Studio 中啟動 JumpStart。

在 Amazon JumpStart 中選擇 SSDMobileNetV2 後,只需一鍵操作就可以部署模型。有了目標檢測模型後,我可以為邊界框以外的關節點添加 exclusion logic,這樣假正例就會少很多!

在人體邊界框以外的關節點被排除在外。

構建動作映射和手勢識別模塊

該模塊對於將人體姿態估計模塊檢測到的 6 個關節點動作轉換為更具意義的輸入至關重要。這包括三種直接的動作映射:

飛行時的身體轉動:用於控制 Griffin 飛行時的方向。身體轉動可以通過橫軸和左右手肘向量之間的夾角進行計算(下圖上)。在飛行時,兩隻翅膀基於這一轉動角度同步移動。選擇手肘而不是手腕是為了最大化可見度,因為手腕經常會掉出攝像頭視角或被其他身體部位遮擋住。

站立時的翅膀旋轉:這純粹是出於美觀,為了讓遊戲更具趣味性,給人一種站立的時候可以單獨控制每個翅膀的印象。這通過橫軸與肩膀 - 手肘向量之間的夾角進行計算(下圖下)。最終的翅膀旋轉角度會添加 15 度,以加大翅膀的動作,畢竟人長時間舉高胳膊會很累。

身體轉動和翅膀旋轉時的動作映射。

蹲伏:這是另一個美觀動作,可以讓人感受到能夠控制 Griffin 起飛前的蹲伏姿勢。這通過脖子 - 鼻子向量和肩膀向量之間的長度比進行計算。蹲伏得越深,脖子和鼻子之間的距離越短,而左右肩膀之間的距離保持不變,因此長度比變小。

蹲伏動作映射。

起飛姿勢:當左右肩膀之間的中心點在一秒內上下移動的幅度超過閾值時,則該動作會被識別為起飛姿勢。閾值是肩膀之間的長度。當這一動作被觸發時,Griffin 會跳下樹枝,開始飛翔。

遊戲復位姿勢:當左右肩膀的水平位置反轉時則為遊戲復位姿勢,如玩家背對攝像頭。遊戲將復位,Griffin 回到站在樹上的姿勢,準備下一次飛行。

起飛和復位手勢識別。

通信系統

現在,我們完成了三個主要組件,只需要將它們粘合在一起就行了。我們需要將姿態估計模塊檢測到的人體關節點發送至手勢識別模塊,這個任務比較簡單。但是,將動作和姿勢映射結果發送至 3D 遊戲引擎就不那麼簡單了,因為遊戲引擎是用 C++ 寫的。你可能會疑惑為什麼不用 Python 構建 3D 遊戲引擎,原因在於沒有靠譜的方式來使用 Python 訪問 OpenGL。此外,即使可能,我也不想花費好幾周時間將 C++ 轉換為 Python 代碼。

此時我需要以最小花銷高效地在這二者之間傳遞信息。對於遊戲引擎而言,最小花銷是非常重要的因素,輸入控制器和動作發生之間出現 100ms 的延遲都會導致玩家失去沉浸式體驗。因此,兩個單獨應用之間的最好通信媒介是 socket。由於這兩個應用在同一臺計算機內,因此延遲會在 5ms 以內。

在 C++ 中,我們簡單地使用 sys/socket 庫,而在 Python 中,我們可以使用 socket 框架。從現在開始,我把手勢識別和姿態估計模塊稱作 Python app,該客戶端發送五種信息:roll_target、lwing_target、rwing_target、body_height 和 game_state。把 3D 遊戲引擎稱為 C++ app,充當監聽並不斷接收上述信息的伺服器。

為了將這五種信息 / 變量正確地從 Python 映射到 C++ 上,在發送之前我們需要將其放置在 Python C-like 結構中。

class Payload(Structure): _fields_ = [(「roll_target」, c_int32), (「lwing_target」, c_int32), ("rwing_target", c_int32), ("body_height", c_int32), ("game_state", c_int32)]

在 C++ app 中,它們以本機 C 結構形式接收。

typedef struct payload_t { int32_t roll_target; int32_t lwing_target; int32_t rwing_target; int32_t body_height; int32_t game_state;} payload;

從下面的架構圖可以看出,通信層由一個位於 Python app 中的客戶端模塊和一個位於 C ++ app 中的伺服器模塊組成。

Griffin 的整體架構圖。

校準與測試

準備就緒後,我設置了 Griffin 系統以執行校準和測試。這套系統的性能要比我預測的好很多,在執行所有實時 3D 渲染和姿態估計時一直都保持在 60FPS 的幀率,看來英偉達的 Jetson AGX Xavier 性能強大不是說說而已。在下面的視頻中,你可以看到校準和測試的過程。這個視頻幀率較低,是因為我在 Ubuntu 桌面上以 15FPS 錄屏,儘量減少對 Griffin 的影響。

Griffin 系統的校準與測試。

起飛

最後,是時候讓 Dexie 用 Griffin 嘗試第一次飛行了,這才是真正的大考。我在客廳裡架設好了系統,我兒子一直在不耐煩地等待行動。

Dexie 使用 Griffin 飛行的經歷。

我只演示了一遍如何控制 Griffin 系統,跳一下就是起飛,展開手臂依靠姿勢控制翅膀,Dexie 就學會了。由於遊戲是第三人稱視角,所以他很快就發現畫面中翅膀的運動是直接和自己姿勢同步的。隨後他就開始享受自己的飛行體驗了。沒有什麼是比你自己更好的遊戲控制器了——記住賈伯斯在發布第一代 iPhone 時嘲笑手寫筆時所說的話。

有意思的是,Dexie 有次快要撞山時,他奮力揚起手臂想要來個急轉彎,但由於我設置了最大旋轉角度限制,Griffin 不允許他飛特別極限的角度,隨後他就撞了山…… 當時是這個樣子:

Dexie 在 Griffin 上的首飛。

他上來就玩了半小時,發瘋似地揮舞著手臂,直到疲倦襲來。最重要的是,那天晚上他睡得很香,對我們來說這是一次勝利!我有更多時間看 Netflix 了 :)

總結

構建這樣一套系統讓我學到了很多,同時獲得的樂趣也很多。總體來說我學到了:

Torch2trt 是一個很強大的工具,可以自動將 PyTorch 模型轉化為 TensorRT 版,讓 AI 模型在 Jetson AGX Xavier 上運行地更快。很多最先進的 AI 模型都是用 PyTorch 構建起來的,但手動將它們移植到 TensorFlow 上可不是好的體驗。

英偉達 Jetson AGX Xavier 的性能非常強大!很多人說它可以實時處理 30 個 1080p 視頻流的計算機視覺模型處理任務,看來的確是這樣。

亞馬遜 SageMaker JumpStart 提供了大量流行的 AI 模型,並讓它們非常易於部署。

構建 3D 遊戲引擎的經歷讓我重拾之前作為遊戲和電影 SFX 開發人員的經歷,再次用起了生疏的 OpenGL、C++ 和三角學方面的技能。

說到動作識別遊戲,人們自然會想到 Xbox——我本可以用 Unity 引擎和 Kinect 傳感器在 Xbox 上構建一個 Griffin,但是這樣不就沒有太大意義了嗎?有時從頭構建一套系統才是樂趣所在。

扮演老鷹是一個很累的工作,尤其是長時間抬起手臂這件事。不過真正的老鷹是通過上升氣流獲得幫助並滑翔在天空中的。

不知這樣的一段經歷,是否能給你一些啟發?

最後,作者計劃在近期將項目代碼開源出來。

參考內容:

https://agustinus-nalwan.medium.com/making-my-toddlers-dream-of-flying-come-true-with-ai-tech-85e40d7144a2

AAAI 2021線上分享 | 利用多輪閱讀理解的框架解決實體連結問題

在華為雲被 AAAI 2021 會議接收的論文中,研究者提出利用多輪閱讀理解的框架來解決短文本的實體連結問題,並在多個中英文數據集上均取得了當前 SOTA 的實體連結效果。

1月14日20:00,華為雲語音語義創新 Lab 算法工程師Xavier為大家詳細解讀此前沿研究。

添加機器之心小助手(syncedai5),備註「AAAI」,進群一起看直播。

© THE END

轉載請聯繫本公眾號獲得授權

投稿或尋求報導:content@jiqizhixin.com

原標題:《用AI「馴服」人類幼崽:這個奶爸找到了硬核帶娃的樂趣》

閱讀原文

相關焦點

  • 用AI「馴服」人類幼崽:這個奶爸找到了硬核帶娃的樂趣
    為了能安心看幾集 Netflix 劇,技術宅奶爸都做了些什麼……長期以來,「奶爸」+「萌娃」一直是一個不被看好的組合,甚至有人說,「父愛如山體滑坡」。不信的話,以下都是證據:眾所周知,人類幼崽似乎是臺永動機,在一天 24 小時任何時間段裡都有可能向你發難。你能讓自己睡個安穩覺的方法看來是在白天消耗他們的精力,因此人們想出了各種各樣的方法。
  • 「大豬蹄子奶爸」硬核帶娃火了,坐在地上的娃:我是誰?我在哪?
    但是當奶爸負責帶娃的時候,我們所看到的畫面可能就是多種多樣的了。這不,近日一位「大豬蹄子奶爸」硬核帶娃的一幕在網上也是火了,這位負責帶娃的奶爸大概是早就忘記了自己正在帶娃,自己一個人躺在床上玩著手機,看起來格外投入,一邊看著手機,一邊還是喜笑顏開的狀態。而娃不知道什麼時候自己一個人坐在了地上,小手摸著腳丫,左看看右看看,心想:我是誰?我在哪?果然是男人帶娃,只要活著就好!
  • 人類幼崽都屬於「早產兒」?短短九個月就能出生,卻具備三大優勢
    人類幼崽與動物幼崽相比是「早產兒」但如果將人類的幼崽和整個自然界的幼崽相比,即使足月出生的孩子都是「早產兒」。剛剛出生的小孩如果沒有父母的照顧,他們不可能活下來,因為除了吮吸這個動作,他們什麼動作都做不了,日常生活就是吃和睡。
  • 「麋鹿奶爸」的「養崽經」:餵奶只能模仿母鹿,把奶瓶夾在胳肢窩裡...
    直接餵奶到麋鹿幼崽嘴裡,它們是不吃的。而把奶瓶夾在胳肢窩裡,或者兩腿之間模仿母鹿,幼崽們才會搶著吃。" 通過觀察麋鹿的行為,已經在東洞庭湖研究、救護麋鹿 10 年的東洞庭湖國家級自然保護區宣教科長宋玉成總結道。他認為生活在洞庭湖區的每隻麋鹿都是一個傳奇,野生動物有著不同於人類的家族史,它們有權利與人類共享一個生物圈。
  • 「人類幼崽」自帶隱藏技能,吮吸是「普攻」,改變媽媽是「大招」
    但作為強大的「人類幼崽」,小嬰兒可不是表面上看起來那麼簡單,出生後的他自帶各種「隱藏技能」,大招更是用在了媽媽身上。小嬰兒自帶「隱藏技能」,吮吸只是普攻如果把小嬰兒會的每一項技能對比起來,生下來就會吮吸只是他的「普通攻擊技能」。因為把自己餵飽了,才有力氣和精力釋放其他技能。
  • 《救火奶爸》(暫譯)首款預告海報曝光 萌娃整蠱硬漢「趙喜娜」引爆笑
    隊員們「被迫營業」變身奶爸的故事線首度曝光,引人期待!人小鬼大的姐弟三人組是會如何顛覆消防隊硬漢們的日常生活?現在就一起進入笑料百出的全球首款預告吧!在預告開頭,「趙喜娜」率領著世界頂級消防菁英隊執行救火任務。
  • 帶上老婆和20個月的人類幼崽去荒島求生!
    帶上老婆和20個月的人類幼崽去荒島求生!不僅要生存,更要生活,還要生活得好一直以來以此為求生信條的德爺展開了一系列「歐氣」操作打野開掛,捕獲野豬再現兩條毛腿肩上扛的名場面高級的食材往往只需要簡單的烹飪廚藝德解鎖荒島限定款地悶腿肉在荒島實現「南水北調」用竹子搭建引水管道
  • 人類幼崽暖心語錄大賞,你最愛哪一句?
    最近 關於人類幼崽的探討 屢屢衝上熱搜 網友們紛紛感嘆道 沒有人能抵抗人類幼崽的可愛
  • 動物幼崽的一萬種死法,你的善良和恐懼都有可能害了它
    一個讓人痛心的事實是:上面這些場景中,往往是善良的市民當著幼崽媽媽的面,搶走了人家的孩子。當我們發現有一隻「落單」幼崽的時候,百分之九十九的可能是儘管幼崽冒冒失失跑遠了一點,但是它的媽媽就在不遠地方灌叢中或者小樹林裡面。
  • 綜藝節目違規接觸熊貓幼崽,網友怒了!
    綜藝節目違規接觸熊貓幼崽,網友怒了!>大熊貓華妮(愛寶)及其幼仔當時兩隻大熊貓都還沒有成年相當於人類年齡的約10歲到12歲他們經過四年多的朝夕相處、相知相伴在中韓雙方的共同努力下於今年7月20日終於成功誕下了首隻熊貓幼仔結束了韓國民眾18年沒有熊貓陪伴的「空窗期」
  • 為什麼成年大熊貓有200斤重,生出來的幼崽卻像只「小老鼠」?
    為什麼成年大熊貓有200斤重,生出來的幼崽卻像只「小老鼠」?說到我們國寶大熊貓,肯定很多朋友都忘不了它那憨態可掬的模樣。成年的熊貓體型非常健碩,像一隻大熊。但是身材高大威猛的熊貓,生出來的幼崽體型卻很小,甚至和小貓小狗的幼崽差不多大,這是為什麼呢?
  • 母貓總將幼崽叼給鏟屎官,是想棄養?潛臺詞到底是什麼呢
    2、 怕幼崽凍著幼貓出生後需要絕對的保暖,否則可能會有生命危險,因此母貓會儘量挨著幼崽們。但是當溫度不夠的時候,母貓就會想辦法,因此會將幼貓叼給鏟屎官,讓鏟屎官想辦法幫助它們取暖。建議鏟屎官在給母貓準備產房的時候,就儘量布置溫暖一些,必要的時候可以打開暖氣。
  • 魔王松鼠幼崽的保暖(熊大)
    熊大到我家今天已經第10天了,它從出生到現在大概45天左右 這個時候的魔王我幼崽 幾乎是一天大一圈 非常的明顯 食量剛開始每頓只吃3——5毫升,到家第五六天突然就增加到9毫升。今天主要分享一下關於幼崽保暖的問題
  • 落基山出現雪羊帶著幼崽攀巖,不怕零下50℃嚴寒,就怕狼群圍攻
    一隻遍體雪白的雪羊,帶著幼崽在險峻陡峭的懸崖上攀巖,輕鬆奔走、跳躍,四處找吃的。調皮的雪羊幼崽,走到一處特別陡峭的峭壁,有點害怕,最終在母雪羊的鼓勵下,跳了過去。雪羊棲身於峭壁之上,與風雪為伴。在高山上峭壁斷崖的巖石區生活,它們不怕又高又陡的山崖,不怕冬季零下50℃的嚴寒天氣,就算被天敵棕熊追擊,也能從容逃到最險峻的懸崖上,但它們最怕狼群圍攻。
  • 旅德大熊貓「夢夢」進入母親角色 幼崽秋季開放參觀
    柏林動物園發言人6日向中新社記者透露,大熊貓幼崽正得到「夢夢」充滿母愛的呵護,從目前情況來看,預計今年秋季結束前可以開放供遊客參觀。中國四川大熊貓「夢夢」和「嬌慶」2017年6月移居德國柏林動物園。在今年4月成功進行人工授精後,「夢夢」於今年8月31日誕下了一對雙胞胎幼崽。
  • 北極冰層融化致北極熊覓食難,熊媽媽吃掉幼崽充飢!
    同類相殘在動物界很常見:像「獅子爭權」勝者會將失敗者的後代殺死;又如部分動物交尾前後,雌性會吃掉雄性;或出現北極熊因食物問題吃掉幼崽的情況等等。據《每日星報》3月1日報導,俄羅斯科學家發現,隨著全球暖化的加劇,北極浮冰數量銳減,令北極熊狩獵困難,導致同類相殘出現的現象越來越頻繁!
  • 全職媽媽的自述:我與人類幼崽戰鬥的每一天
    這其間我們有過很充足的溝通,我老公說如果我掙的更多,他也是願意當全職奶爸的,最後綜合各方考慮,我選擇辭去網際網路公司的工作,成為全職媽媽。■ 維西的女兒迪迪的小腳丫人類幼崽是世界上最可怕的生物其實,在懷孕的過程中,我狀態還挺好的,整個人處在一種很嗨的狀態,完全沒有意識到小孩是一種多麼可怕的生物。
  • 人類逼瘋了北極熊,它們被迫改變食物,母熊為生存吃掉幼崽
    地球是一個完美的生態系統,在一定範圍內,地球可以對自己的氣溫進行自我調節,但一旦超過這個限度,地球的自我調節系統就會失靈,並且可能陷入永久不可修復的狀態。而在2億年前,受到火山爆發等頻發的地殼活動影響,地球就曾陷入了一個封閉的「溫室」狀態,當時的地球宛如一個巨大的「蒸籠」。
  • 結束冬眠的北極熊幼崽,對著鏡頭「揮爪」:嗨,第一個春天!
    在漫長而無趣的冬眠過程中,成年雌性北極熊會產下幼崽,等到春暖花開時,母熊會帶著幼崽一起出洞開始嶄新的生活。第一春季對北極熊幼崽的成長尤為重要,所以母熊必須在這時增加捕獵頻率,儘可能地滿足幼崽們對食物的巨大需求。
  • 加利福尼亞野火:消防員救出了孤兒和被燒毀的美洲獅幼崽
    這隻只有4到6周大的幼崽不能被放回野外,因為它沒有媽媽可以學習。 一隻美洲獅孤兒幼崽在與加州野火搏鬥時被救起,目前正在接受嚴重燒傷的治療。 這隻幼崽只有4到6周大,本周早些時候在加州雷丁附近被發現。9月27日,Zogg大火席捲了該地區,造成4人死亡。