feat: release Modelscope and OpenAvatarChat

This commit is contained in:
fdyuandong
2025-04-21 18:33:18 +08:00
parent 7cc233a737
commit 105cfbfc89
5 changed files with 19 additions and 11 deletions

View File

@@ -2,6 +2,7 @@
[![Website](https://raw.githubusercontent.com/prs-eth/Marigold/main/doc/badges/badge-website.svg)](https://aigc3d.github.io/projects/LAM/)
[![Apache License](https://img.shields.io/badge/📃-Apache--2.0-929292)](https://www.apache.org/licenses/LICENSE-2.0)
[![ModelScope](https://img.shields.io/badge/%20ModelScope%20-Space-blue)](https://www.modelscope.cn/studios/Damo_XR_Lab/LAM-A2E)
#### This project leverages audio input to generate ARKit blendshapes-driven facial expressions in ⚡real-time⚡, powering ultra-realistic 3D avatars generated by [LAM](https://github.com/aigc3d/LAM).
@@ -14,12 +15,14 @@
## 📢 News
**[April 21, 2025]** We have released the [ModelScope](https://www.modelscope.cn/studios/Damo_XR_Lab/LAM-A2E) Space ! <br>
**[April 21, 2025]** We have released the WebGL Interactive Chatting Avatar SDK on [OpenAvatarChat](https://github.com/HumanAIGC-Engineering/OpenAvatarChat) (including LLM, ASR, TTS, Avatar), with which you can freely chat with our generated 3D Digital Human ! 🔥 <br>
### To do list
- [ ] Release Huggingface space.
- [ ] Release Modelscope space.
- [x] Release Modelscope space.
- [ ] Release the LAM-A2E model based on the Flame expression.
- [ ] Release Interactive Chatting Avatar SDK with [OpenAvatarChat](https://github.com/HumanAIGC-Engineering/OpenAvatarChat), including LLM, ASR, TTS, LAM-Avatars.
- [x] Release Interactive Chatting Avatar SDK with [OpenAvatarChat](https://www.modelscope.cn/studios/Damo_XR_Lab/LAM-A2E), including LLM, ASR, TTS, LAM-Avatars.

View File

@@ -142,9 +142,13 @@ def demo_lam_audio2exp(infer, cfg):
cfg.save_json_path = os.path.join("./assets/sample_lam", base_id, 'arkitWithBSData', 'bsData.json')
infer.infer()
create_zip_archive(output_zip='./assets/arkitWithBSData.zip', base_dir=os.path.join("./assets/sample_lam", base_id))
output_file_name = base_id+'_'+os.path.basename(audio_params).split(".")[0]+'.zip'
assetPrefix = 'gradio_api/file=assets/'
output_file_path = os.path.join('./assets',output_file_name)
return 'gradio_api/file='+audio_params
create_zip_archive(output_zip=output_file_path, base_dir=os.path.join("./assets/sample_lam", base_id))
return 'gradio_api/file='+audio_params, assetPrefix+output_file_name
with gr.Blocks(analytics_enabled=False) as demo:
logo_url = './assets/images/logo.jpeg'
@@ -158,7 +162,7 @@ def demo_lam_audio2exp(infer, cfg):
""")
gr.HTML(
"""<p><h4 style="color: blue;"> Notes: This project leverages audio input to generate ARKit blendshapes-driven facial expressions in ⚡real-time⚡, powering ultra-realistic 3D avatars generated by LAM.</h4></p>"""
"""<p><h4 style="color: blue;"> Notes: This project leverages audio input to generate ARKit blendshapes-driven facial expressions in ⚡real-time⚡, powering ultra-realistic 3D avatars generated by <a href="https://github.com/aigc3d/LAM">LAM</a>.</h4></p>"""
)
# DISPLAY
@@ -224,12 +228,12 @@ def demo_lam_audio2exp(infer, cfg):
if h5_rendering:
gr.set_static_paths(Path.cwd().absolute() / "assets/")
assetPrefix = 'gradio_api/file=assets/'
with gr.Row():
gs = gaussian_render(width=380, height=680, assets=assetPrefix + 'arkitWithBSData.zip')
gs = gaussian_render(width=380, height=680)
working_dir = gr.State()
selected_audio = gr.Textbox(visible=False)
selected_render_file = gr.Textbox(visible=False)
submit.click(
fn=assert_input_image,
@@ -243,7 +247,7 @@ def demo_lam_audio2exp(infer, cfg):
fn=core_fn,
inputs=[input_image, audio_input,
working_dir],
outputs=[selected_audio],
outputs=[selected_audio, selected_render_file],
queue=False,
).success(
fn=audio_loading,
@@ -251,7 +255,8 @@ def demo_lam_audio2exp(infer, cfg):
js='''(output_component) => window.loadAudio(output_component)'''
).success(
fn=do_render(),
js='''() => window.start()'''
outputs=[selected_render_file],
js='''(selected_render_file) => window.start(selected_render_file)'''
)
demo.queue()

View File

@@ -6,4 +6,4 @@ pip install torch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 --index-url https
pip install -r requirements.txt
# install H5-render
pip install wheels/gradio_gaussian_render-0.0.2-py3-none-any.whl
pip install wheels/gradio_gaussian_render-0.0.3-py3-none-any.whl

View File

@@ -6,4 +6,4 @@ pip install torch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 --index-url https
pip install -r requirements.txt
# install H5-render
pip install wheels/gradio_gaussian_render-0.0.2-py3-none-any.whl
pip install wheels/gradio_gaussian_render-0.0.3-py3-none-any.whl