人物画像分割の使用
背景の設定
SDKはぼかし背景、画像背景の設定ができ、初期化パラメータでパススルーできます:
const config = {module: {beautify: true, // 美顔モジュールのオン・オフ。オンにすると美顔、化粧、ステッカーなどの機能が使用可能segmentation: true // シルエット切り抜きモジュールのオン・オフ。有効にすると背景機能が使用可能segmentationLevel: 0 // 1.0.19以上のバージョンは背景切り抜きモデルの切り替えをサポート},auth: authData, // 認証パラメータinput: stream, // input入力ストリームbeautify: { // 美顔パラメータの初期化(任意)whiten: 0.1,dermabrasion: 0.3,eye: 0.2,chin: 0,lift: 0.1,shave: 0.2},background: {type: 'blur' // ぼかし背景}}const sdk = new ArSdk(// sdk初期化用のconfigオブジェクトを渡しますconfig)
SDKは背景の変更もサポートしています:
sdk.setBackground({type: 'image', // 画像背景src: 'https://webar-static.tencent-cloud.com/assets/background/1.jpg'})
SDKはvideoタイプの動的背景をサポートしています(1.0.23バージョン以上では利用可能):
sdk.setBackground({type: 'video', // 動画の動的背景src: 'https://webar-static.tencent-cloud.com/assets/background/video-bg-1.mp4',})
エッジぼかし度の設定(1.0.25バージョン以上では設定可能):
sdk.setBackground({type: 'image', // 画像背景src: 'https://webar-static.tencent-cloud.com/assets/background/1.jpg',edgeBlur: '6', // 値の範囲は0~10で、数値が低いほどエッジの切り取りが鋭く、ぼかし度が低くなります。})
透明背景
SDKは一部のブラウザで透明背景をサポートしています:
sdk.setBackground({type: 'transparent'})
注意:
ブラウザの互換性上、以下の点に注意してください:
シルエット切り抜きはモバイル端末とデスクトップ端末のブラウザの両方をサポートしています。
透明背景はローカルでの処理と表示のみ可能です。WebRTCは透明チャネルのエンコードをサポートしていないため、プッシュストリームで透明背景が無効になります。
透明背景の効果はデスクトップのChrome/Firefoxのみをサポートしており、デスクトップSafariおよびiOSではサポートされていません。
1.0.19以上のバージョンは背景切り抜きモデルの切り替えをサポートし、パラメータは0、1、2をサポートしています。
level 0はパフォーマンスが最も良いですが、切り抜き効果が普通です。
level 1は効果とパフォーマンスが適正レベルにあります。
level 2は切り抜き効果が最も良く、推論時間が最も長いため、高い切り抜き効果を求めるハードウェアパフォーマンスが良好なシナリオに適しています。