0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

通過SKY ENGINE AI平臺和NVIDIA RTX推進體育分析案例

星星科技指導員 ? 來源:NVIDIA ? 作者:Jakub Pietrzak ? 2022-04-15 15:46 ? 次閱讀

建設訓練和測試場地以幫助將運動分析 AI 解決方案從實驗室推進到現(xiàn)實世界是一項極具挑戰(zhàn)性的任務。在以團隊為基礎的體育運動中,在冠軍賽季前制定正確的比賽策略是任何職業(yè)教練和俱樂部所有者成功的關鍵。

盡管教練們努力在比賽中提供最佳提示并指出錯誤,但他們?nèi)匀粺o法在重新觀看比賽時注意到雙方的每一個細節(jié)和行為模式。要收集這些數(shù)據(jù),分析它們,并對團隊行為做出推斷,您可以使用復雜的 AI 算法

特別是,我們想要解決的任務類型是培養(yǎng)橄欖球隊的分析能力,即比賽期間每個球員的位置以及每個球員在球場上的 3D 姿勢。實時獲得這些信息為制定更好的游戲策略提供了必要的證據(jù)。

在許多體育分析案例中,一類問題已經(jīng)找到了有效的解決方案,但無法有效應用——主要瓶頸是缺少數(shù)據(jù)。

收集和標記數(shù)據(jù)的過程可能既昂貴又耗時。人類必須手動分析圖像,與計算機相比,這種重復性工作不僅速度慢、成本高,而且精確度也較低。

此外,還有一些情況需要現(xiàn)代設備來生成標記數(shù)據(jù),并需要高素質(zhì)的專家來維護生產(chǎn)過程。這種情況顯著增加了項目成本,或者在許多情況下,使利益相關者無法實現(xiàn)體育分析項目。

基于團隊的運動:機器學習計算機視覺的誘人機會

如果你能自動生成圖像和視頻數(shù)據(jù),完全適合手頭的任務,并內(nèi)置完整且始終正確的地面真相,會怎么樣?

在這篇文章中,我們將以足球或橄欖球運動員的 3D 姿勢識別為例,展示我們實現(xiàn)這一目標的嘗試。目標是訓練人工智能模型,以準確識別足球運動員及其姿勢,將其作為真實比賽畫面上 3D 空間中的人體關鍵點。

人工智能模型專門針對使用 SKY ENGINE 人工智能平臺和 NVIDIA RTX 機器生成的人工合成數(shù)據(jù)進行訓練。生成的圖像是完全由 SKY ENGINE 渲染器控制的模擬場景。根據(jù)模型的要求,可以提供各種基本事實。

具有 NVIDIA RTX 核心的 SKY ENGINE AI 渲染引擎為深度學習提供基于物理的渲染。異構系統(tǒng)由 NVIDIA Titan RTX 和 NVIDIA V100 GPU 組成。這是一種高效且功能強大的配置,可以同時生成標記的多光譜 (如果需要)數(shù)據(jù)集和訓練神經(jīng)網(wǎng)絡。

這種方法的主要優(yōu)點包括:

有效處理不平衡數(shù)據(jù)

準確檢測制服和體育場上的標識(誤報)

通常,帶有壓縮偽影的噪聲、低質(zhì)量數(shù)據(jù)流不會降低 AI 驅(qū)動的推理精度

可以有效地導出廣播攝像機的未知參數(shù)

提供高質(zhì)量的 3D 貼圖

可以精確地對小目標進行姿態(tài)估計

運動和構造的復雜結構可以準確識別

NVIDIA RTX 體系結構的高效數(shù)據(jù)處理和計算優(yōu)化

下面是 SKY ENGINE AI 平臺中解決的 3D 姿勢估計問題的完整解決方案。

使用 SKY ENGINE AI 平臺的運動分析案例

首先,必須配置渲染引擎,定義渲染數(shù)據(jù)源,并訓練 AI 模型以進行人體檢測和 3D 姿勢估計。

資源加載和渲染引擎配置

從加載體育場幾何體的資源開始。這些資源在標準 3D 建模軟件中準備,并以 Alembic 格式加載到 SKY ENGINE 中。

renderer_ctx.load_abc_scene('stadium')
renderer_ctx.setup()

接下來,顯示體育場的加載幾何體:

with example_assistant.get_visualizer() as visualizer:
visualizer(renderer_ctx.render_to_numpy())
A simple preview of stadium geometry with simple Phong shader, without materials. Grayscale image.

下一步需要使用 Python API 加載幾何體的紋理:

stadium_base_textures = SubstanceTextureProvider(renderer_ctx, 'concrete')
stadium_base_params = PBRShader.create_parameter_provider(renderer_ctx, tex_scale=50)
renderer_ctx.set_material_definition('stadion_base_GEO',
??MaterialDefinition(stadium_base_textures, parameter_set=stadium_base_params))

如前所示, SKY ENGINE 提供了對程序紋理的完全支持,這帶來了各種數(shù)據(jù)的快速生成以及基于物理的渲染( PBR 著色器)。

定義環(huán)境地圖如下:

renderer_ctx.define_env(Background(renderer_ctx,
EnvMapMiss(renderer_ctx),
HdrTextureProvider(renderer_ctx, 'light_sky')))

此時,場景中已渲染體育場。下一步是配置整個場景并用播放器填充它。您可以使用一種方便的實例化機制來實現(xiàn)這一點。

“天空引擎”( SKY ENGINE )渲染器提供了幾乎無限的可能性來洗牌、乘法、隨機化和組織資源。從某個玩家的單個 Alembic 動畫中,您將創(chuàng)建兩個團隊,每個團隊由 20 名玩家組成。

renderer_ctx.layout().duplicate_subtree(renderer_ctx, 'player_GEO_NUL', suffix='team2')
renderer_ctx.layout().get_node('player_GEO_NUL').n_instances = 20
renderer_ctx.layout().get_node('player_GEO_NUL_team2').n_instances = 20

默認情況下,所有材質(zhì)都是隨機繪制的。要創(chuàng)建兩個合適的球隊,您需要確保給定球隊中的每個球員都有相同顏色的球衣。保持所有其他輸入的隨機性,例如頭發(fā)、膚色、襪子顏色、襯衫編號等。

要實現(xiàn)這一點,您必須將玩家分成不同的隨機分組,并定義他們的繪圖策略??刂埔r衫顏色的 Substance archive 輸入為 Colors _ select 。在隨機化組內(nèi)需要相同(同步),組間需要不同。默認情況下,所有其他輸入保持隨機化。

shirt_sync = SynchronizedInput(SynchronizationDescription(
in_strategy=Synchronization.DISTINCT_EQUAL_GROUPS))
player_material_strategy = DrawingStrategy(renderer_ctx, inputs_strategies={'Colors_select': shirt_sync})
renderer_ctx.instancers['player_GEO'].modify_material_definition(strategy=player_material_strategy)
renderer_ctx.instancers['player_GEO_team2'].modify_material_definition(randomization_group='team2',
strategy=player_material_strategy)

圖 5 顯示了每個玩家都處于相同的姿勢。默認情況下, SKY ENGINE 逐幀播放 Alembic 文件中的動畫,因此必須隨機化此參數(shù)。

player_geometry_strategy = DrawingStrategy(renderer_ctx, frame_numbers_strategy=UniformRandomInput())
renderer_ctx.instancers['player_GEO'].modify_geometry_definition(strategy=player_geometry_strategy)

橄欖球比賽中,球員分布不均勻;他們傾向于聚集在一起,靠得更近。為了使場景看起來更自然,可以更改繪制球員位置的方式。您可以使用隨機高斯分布,而不是均勻地繪制它們。它是雙重隨機的,因為首先\muand\sigma然后使用這些參數(shù)隨機繪制玩家的位置。

gauss_strategy = DrawingStrategy(renderer_ctx,
default_input_strategy=RandomGaussianRandomInput(sigma_relative_limits=(0.1, 0.2)))
renderer_ctx.layout().get_node('player_GEO_NUL').modify_locus_definition(strategy=gauss_strategy)

在這篇文章中,我們跳過了相機、燈光和后處理的額外配置,但我們鼓勵您從 GitHub repo 獲取詳細信息。移動到與場景語義和基本事實相關的配置。

關鍵點已出現(xiàn)在播放器的動畫中。默認情況下, SKY ENGINE 會計算有關關鍵點的所有信息(如果它在輸入資源中接收到這些信息)。您只需將它們可視化,以確保所有配置都正確。綠色關鍵點可見,紅色關鍵點隱藏。

example_assistant.visualized_outputs = {SceneOutput.BEAUTY, SceneOutput.SEMANTIC, SceneOutput.KEYPOINTS}

場景看起來正確,因此可以為 AI 培訓創(chuàng)建渲染器數(shù)據(jù)源。

datasource = MultiPurposeRendererDataSource(renderer_context=renderer_ctx, images_number=20, cache_folder_name='rugby_presentation_new')

人工智能模型訓練過程

在培訓階段,您將使用在 DeepSky 庫中實現(xiàn)的模型和培訓器,該庫是 SKY ENGINE AI 平臺的一部分。

main_datasource = SEWrapperForDistancePose3D(datasource, imgs_transform=transform)
train_data_loader = DataLoader(dataset,
batch_size=Constants.TRAIN_BATCH_SIZE,
num_workers=Constants.NUM_WORKERS,
drop_last=Constants.DROP_LAST,
shuffle=Constants.VALID_SHUFFLE,
collate_fn=collate_fn)
model = get_pose_3d_model(main_datasource.joint_num, backbone_pretrained=True)
trainer = DefaultTrainer(
data_loader=train_data_loader, model=model, epochs=Constants.EPOCHS, save_freq=1,
valid_data_loader=valid_data_loader, optimizer=optimizer, evaluator=evaluator, scheduler=scheduler, serializer=serializer)
trainer.train()

現(xiàn)在檢查人工智能模型在合成數(shù)據(jù)上的訓練結果,以驗證所有配置是否正確。在每個歷元之后,保存一個檢查點并生成一些推理示例以查看訓練進度。

show_jupyter_picture('gtc03_assets/trained/img2.png')

人工智能模型在真實圖像上的結果

在下一步中,將在真實視頻上驗證結果。首先,使用預訓練模型進行玩家檢測,以找到邊界框。有關更多信息,請參閱 GTC 2019 上提供的播放器檢測教程,該教程可在天空引擎 AI GitHub repo 上獲得。

checkpoint = torch.load('gtc03_assets/trained/rugby_detection.pth.tar')
for k, v in sorted(checkpoint.items()):
??checkpoint[''.join(['_model.', k])] = checkpoint.pop(k)
detection_model.load_state_dict(checkpoint)
detection_model = detection_model.to(device)
real_dataset = ImageInferenceDatasource(dir='gtc03_assets/real_data', extension='png')
out = outputs.pop()
bboxes = out['boxes'].cpu().detach().numpy()
bboxes = bboxes[np.where(labels == 1)[0]]
labels = out['labels'].cpu().detach().numpy()
bbox_image = bboxes_viz(orig_img, bboxes)
with torch.no_grad():
??results = model((img,), ({'boxes': torch.from_numpy(bboxes).int()},))
results = results.pop()
output_coords, output_bboxes = results['pred_poses_coords'].cpu(), \
????????results['boxes'].cpu()

SKY ENGINE AI 能夠訓練其關鍵點 AI 模型之一,以檢測玩家并正確估計骨骼關節(jié)的 3D 坐標??捎脭?shù)據(jù)的質(zhì)量極低是由于捕獲了分辨率較低、壓縮能力強的實況電視廣播。如果不使用具有完美地面真實性的合成數(shù)據(jù)方法,這種評估任務在使用真實畫面進行人工智能模型訓練的傳統(tǒng)方法中幾乎是不可能的。
結論

三維姿態(tài)估計是最復雜的計算機視覺任務之一,通常需要高質(zhì)量的圖像、校準的攝像機和完美的照明條件。另一方面,訓練用于運動分析的姿勢估計算法需要昂貴的運動捕捉課程,并在球場上安裝復雜的設備。

我們剛剛介紹了如何使用簡單的 3D 資源和在 NVIDIA 硬件上工作的 SKY ENGINE AI 平臺解決這個問題。

SKY ENGINE AI 工具用于構建團隊體育應用程序,這可能會徹底改變這些游戲。球員、教練、俱樂部、決策者、球迷和廣播機構可能會從這些運動的進一步民主化中受益。例如,您可以使用 SKY ENGINE AI 快速評估來自代表性不足地區(qū)或較低聯(lián)賽的球員的技能,而無需個別球探的武斷判斷。

這種方法可以很容易地復制到訓練模型中,以檢測人類,估計他們的位置,并分析他們在任何條件下的運動,而不考慮環(huán)境:工廠、車間或空間站。

關于天空引擎 AI

SKY ENGINE AI 是一個模擬和深度學習平臺,可生成完全注釋的合成數(shù)據(jù),并按比例訓練 AI 計算機視覺算法。該平臺生成照片級真實感環(huán)境和對象的高度平衡的圖像數(shù)據(jù),并提供高級域自適應算法。 SKY ENGINE AI 平臺是一個工具,可供開發(fā)人員、數(shù)據(jù)科學家和 ML /軟件工程師在任何行業(yè)創(chuàng)建計算機視覺項目。

SKY ENGINE AI 平臺能夠從頭開始構建優(yōu)化的定制 AI 模型,并在虛擬現(xiàn)實中對其進行培訓。 SKY ENGINE AI 軟件使您能夠創(chuàng)建任何傳感器、無人機機器人的數(shù)字孿生模型,并在實際部署之前在虛擬環(huán)境中對其進行測試和培訓。

SKY ENGINE AI 數(shù)據(jù)生成通過為任何計算機視覺應用程序提供完美平衡的合成數(shù)據(jù)集,使數(shù)據(jù)科學家的生活更加輕松。示例包括對象檢測和識別、 3D 定位和姿勢估計。其他復雜的案例包括使用雷達、激光雷達、衛(wèi)星、 X 射線等分析多傳感器數(shù)據(jù)。

關于作者

Jakub Pietrzak 是 Sky Engine AI 的首席技術官。他負責 GPU 加速研究、數(shù)據(jù)科學和機器學習算法開發(fā)。他是一名計算機視覺魔術師,在機器學習、光線跟蹤和數(shù)字圖像處理方面有 15 年以上的經(jīng)驗。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • NVIDIA
    +關注

    關注

    14

    文章

    5072

    瀏覽量

    103514
  • 人工智能
    +關注

    關注

    1793

    文章

    47622

    瀏覽量

    239571
  • 機器學習
    +關注

    關注

    66

    文章

    8438

    瀏覽量

    132906
收藏 人收藏

    評論

    相關推薦

    0xmd公司通過NVIDIA GPU打造醫(yī)療AI解決方案

    本案例中,0xmd 公司通過 NVIDIA GPU 打造醫(yī)療 AI 解決方案,覆蓋影像分析和文本解讀等領域。
    的頭像 發(fā)表于 01-14 16:23 ?129次閱讀

    NVIDIA發(fā)布Cosmos平臺,加速物理AI開發(fā)

    )和機器人等物理AI系統(tǒng)的快速發(fā)展。 Cosmos平臺的核心在于其強大的生成式世界基礎模型,能夠模擬和預測復雜環(huán)境中的各種物理現(xiàn)象。結合高級tokenizer,Cosmos能夠高效地處理和分析大量數(shù)據(jù),為物理
    的頭像 發(fā)表于 01-13 11:06 ?298次閱讀

    NVIDIA發(fā)布Cosmos?平臺,助力物理AI系統(tǒng)發(fā)展

    NVIDIA近日宣布推出全新的NVIDIA Cosmos?平臺,該平臺專為自動駕駛汽車(AV)和機器人等物理AI系統(tǒng)而設計,旨在推動這些領域
    的頭像 發(fā)表于 01-08 15:36 ?304次閱讀

    NVIDIA推出面向RTX AI PC的AI基礎模型

    NVIDIA 今日發(fā)布能在 NVIDIA RTX AI PC 本地運行的基礎模型,為數(shù)字人、內(nèi)容創(chuàng)作、生產(chǎn)力和開發(fā)提供強大助力。
    的頭像 發(fā)表于 01-08 11:01 ?220次閱讀

    NVIDIA和GeForce RTX GPU專為AI時代打造

    NVIDIA 和 GeForce RTX GPU 專為 AI 時代打造。
    的頭像 發(fā)表于 01-06 10:45 ?191次閱讀

    使用NVIDIA AI平臺確保醫(yī)療數(shù)據(jù)安全

    三井物產(chǎn)株式會社子公司借助 NVIDIA AI 平臺實現(xiàn)數(shù)據(jù)集的安全共享并使用在這些數(shù)據(jù)集上建立的強大模型加速藥物研發(fā)。
    的頭像 發(fā)表于 11-20 09:37 ?219次閱讀

    NVIDIA RTX AI Toolkit擁抱LoRA技術

    RTX AI PC 和工作站上使用最新版 RTX AI Toolkit 微調(diào) LLM,最高可將性能提升至原來的 6 倍。
    的頭像 發(fā)表于 11-20 09:14 ?310次閱讀
    <b class='flag-5'>NVIDIA</b> <b class='flag-5'>RTX</b> <b class='flag-5'>AI</b> Toolkit擁抱LoRA技術

    NVIDIA AI正加速推進藥物研發(fā)

    在當前的醫(yī)療健康領域,AI 的重要性愈發(fā)凸顯。NVIDIA AI 正加速推進藥物研發(fā),致力于減少藥物的研發(fā)時間和成本,使更多的老年患者能夠更快獲得關鍵治療。
    的頭像 發(fā)表于 11-19 16:07 ?280次閱讀

    賴耶科技通過NVIDIA AI Enterprise平臺打造超級AI工廠

    NVIDIA 技術團隊保持合作。賴耶科技通過NVIDIA AI Enterprise平臺打造的超級
    的頭像 發(fā)表于 11-19 14:55 ?458次閱讀

    NVIDIA RTX AI套件簡化AI驅(qū)動的應用開發(fā)

    NVIDIA 于近日發(fā)布 NVIDIA RTX AI套件,這一工具和 SDK 集合能夠幫助 Windows 應用開發(fā)者定制、優(yōu)化和部署適用于 Windows 應用的
    的頭像 發(fā)表于 09-06 14:45 ?498次閱讀

    RTX AI PC和工作站提供強大AI性能

    NVIDIA RTX 和 GeForce RTX 技術驅(qū)動的 AI PC 時代已經(jīng)到來。在這一背景下,一種評估 AI 加速性能的新方法應
    的頭像 發(fā)表于 08-23 16:57 ?697次閱讀

    NVIDIA推出用于支持在全新GeForce RTX AI筆記本電腦上運行的AI助手及數(shù)字人

    》中。NVIDIA 還發(fā)布專為 NVIDIA ACE 數(shù)字人平臺打造的首個基于 PC 的 NVIDIA NIM 推理微服務。 這些技術由?NVIDI
    的頭像 發(fā)表于 06-04 10:19 ?862次閱讀

    NVIDIA宣布全面推出 NVIDIA ACE 生成式 AI 微服務

    NVIDIA ACE 現(xiàn)已全面在云端推出,并在 RTX AI PC 上提供搶先體驗,已獲戴爾科技、ServiceNow、Aww Inc.、英業(yè)達、完美世界游戲等多家客戶服務、游戲和醫(yī)療健康領域的公司
    的頭像 發(fā)表于 06-04 10:18 ?704次閱讀

    是德科技與NVIDIA攜手推進6G研究云平臺發(fā)展

    是德科技近日宣布與現(xiàn)已開啟與全新NVIDIA 6G研究云平臺的合作,加速推進6G技術研究。該平臺集成了NVIDIA Aerial Omniv
    的頭像 發(fā)表于 03-27 09:26 ?725次閱讀

    TensorRT LLM加速Gemma!NVIDIA與谷歌牽手,RTX助推AI聊天

    NVIDIA今天在其官方博客中表示,今天與谷歌合作,在所有NVIDIA AI平臺上為Gemma推出了優(yōu)化。
    的頭像 發(fā)表于 02-23 09:42 ?652次閱讀
    TensorRT LLM加速Gemma!<b class='flag-5'>NVIDIA</b>與谷歌牽手,<b class='flag-5'>RTX</b>助推<b class='flag-5'>AI</b>聊天