Membina Kad Profil AR dengan Pengesanan Wajah Masa Nyata
Einführung
Stellen Sie sich eine interaktive 3D-Profilkarte vor, die Ihre Gesichtsbewegungen verfolgt und in Echtzeit reagiert – das ist die Essenz der 3D-AR-Profilkarte. Erstellt von P-R. Lopez, einem leitenden Entwickler mit Fachkenntnissen in JavaScript, React und Firebase, kombiniert diese Karte modernste Gesichtserkennungstechnologie mit einem schlanken, hochwertigen Design mit dynamischen Leuchteffekten, satten Farbverläufen und einem anspruchsvollen Layout. Es ist perfekt, um Benutzer auf persönlicher Ebene anzusprechen.
In diesem Tutorial erstellen wir diese interaktive Profilkarte mit HTML, CSS und JavaScript mit FaceMesh von TensorFlow für die Gesichtserkennung in Echtzeit. Diese Komponente ist ideal für professionelle Portfolios oder Anwendungen, die ein unvergessliches, interaktives Erlebnis erfordern. Wer sich für interaktivere Projekte interessiert, sollte sich Gladiators Battle nicht entgehen lassen – ein spannendes Gladiatoren-Kartenspiel, inspiriert vom antiken Rom, das fesselnde Strategie und visuell atemberaubendes Design vereint.
Lassen Sie uns mit der Erstellung dieser Profilkarte beginnen!
Schritt 1: Einrichten der HTML-Struktur
Unsere Profilkarte enthält einen Webcam-Feed zur Gesichtserkennung, Benutzerinformationen und Social-Media-Symbole.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>3D AR Profile Card with Face Detection</title> <link rel="stylesheet" href="styles.css"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css"> </head> <body> <!-- Video for webcam stream --> <video> <p>Key HTML Elements<br> Webcam Video: Captures real-time video for face detection.<br> Profile Card: Contains profile information, including name, location, experience, skills, and links to Gladiators Battle and social media.<br> Social Icons: Link to GitHub, LinkedIn, and Twitter (or X), providing a fully interactive and connected profile.<br> Step 2: Styling the Profile Card with CSS<br> The CSS brings the 3D and AR effects to life, with gradients, glowing shadows, and animations for an eye-catching experience.</p> <p>Body and Background<br> The body uses a radial gradient to create a soft, dark background that complements the card’s glowing effects.<br> </p> <pre class="brush:php;toolbar:false">body { display: flex; align-items: center; justify-content: center; height: 100vh; margin: 0; background: radial-gradient(circle at center, #2d2d2d, #1b1b1b); overflow: hidden; font-family: 'Arial', sans-serif; } /* Webcam */ #webcam { position: fixed; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; z-index: -1; }
Profilkartendesign
Die Profilkarte selbst nutzt Farbverlaufshintergründe, 3D-Transformationen und Schatteneffekte, um hervorzustechen.
.profile-card { position: relative; width: 370px; padding: 35px; border-radius: 25px; background: linear-gradient(145deg, #3d3d3d, #2a2a2a); box-shadow: 0 15px 25px rgba(0, 0, 0, 0.6), 0 0 25px rgba(255, 215, 0, 0.3), inset 0 0 15px rgba(255, 255, 255, 0.1); transform-style: preserve-3d; transform: perspective(1000px); transition: transform 0.3s ease, box-shadow 0.3s ease; z-index: 1; } .profile-card:hover { box-shadow: 0 25px 50px rgba(0, 0, 0, 0.7), 0 0 50px rgba(255, 215, 0, 0.7), inset 0 0 15px rgba(255, 255, 255, 0.2); transform: scale(1.03); }
Avatar- und Text-Styling
Der Avatar und der Text sind so gestaltet, dass sie zur erstklassigen Ästhetik der Karte passen, mit leuchtenden und kräftigen Effekten.
.profile-avatar { width: 130px; height: 130px; background: url('avatar.jpg') center/cover; border-radius: 50%; margin: 0 auto; box-shadow: 0px 0px 20px rgba(255, 255, 255, 0.4), 0px 0px 30px rgba(255, 215, 0, 0.5); transform: translateZ(70px); transition: box-shadow 0.3s ease, transform 0.3s ease; } .profile-name { font-size: 30px; text-align: center; color: #ffffff; margin-top: 20px; transform: translateZ(50px); background: linear-gradient(45deg, #ffd700, #ffa500, #ff4500); -webkit-background-clip: text; color: transparent; font-weight: bold; text-shadow: 0px 3px 5px rgba(0, 0, 0, 0.4); }
Schritt 3: Gesichtserkennung mit TensorFlow FaceMesh
Der JavaScript-Code verwendet das FaceMesh-Modell von TensorFlow, um Gesichter zu erkennen und das Profilbild dynamisch festzulegen. Dieser innovative Ansatz verleiht der Karte ein AR-Feeling.
Webcam- und Gesichtserkennungs-Setup
Die Funktion „setupCameraAndModel“ initialisiert den Webcam-Feed und lädt das FaceMesh-Modell, um mit der Gesichtsverfolgung zu beginnen.
const video = document.getElementById('webcam'); const profileAvatar = document.querySelector('.profile-avatar'); async function setupCameraAndModel() { const model = await facemesh.load(); const stream = await navigator.mediaDevices.getUserMedia({ video: { width: 640, height: 480 } }); video.srcObject = stream; video.addEventListener('loadeddata', () => { detectFaceAndCapture(model, stream); }); }
Gesichtserkennung und Avatar-Update
Die Funktion „DetectFaceAndCapture“ erfasst ein Foto, wenn ein Gesicht erkannt wird, und legt es als Hintergrund für den Profil-Avatar fest.
async function detectFaceAndCapture(model, stream) { const predictions = await model.estimateFaces(video); if (predictions.length > 0) { const canvas = document.createElement('canvas'); canvas.width = video.videoWidth; canvas.height = video.videoHeight; const context = canvas.getContext('2d'); context.drawImage(video, 0, 0, canvas.width, canvas.height); const imageDataUrl = canvas.toDataURL('image/png'); profileAvatar.style.backgroundImage = `url(${imageDataUrl})`; stream.getTracks().forEach(track => track.stop()); video.style.display = 'none'; } else { requestAnimationFrame(() => detectFaceAndCapture(model, stream)); } } // Initialize camera and model setupCameraAndModel();
Diese Methode verleiht der Profilkarte eine einzigartige Note, indem das Profilbild mithilfe der AR-Technologie dynamisch in Echtzeit festgelegt wird.
Fazit
Die Erstellung einer interaktiven 3D-AR-Profilkarte mit Echtzeit-Gesichtserkennung verleiht jeder privaten oder beruflichen Website ein modernes, erstklassiges Erscheinungsbild. Dieses Tutorial kombiniert CSS für 3D-Effekte und JavaScript für die dynamische Gesichtserkennung mit TensorFlow und demonstriert so einen leistungsstarken Ansatz zur Verbesserung der Benutzerinteraktion. Wenn Sie an innovativeren, immersiveren Projekten interessiert sind, sollten Sie sich Gladiators Battle nicht entgehen lassen – ein spannendes Gladiatoren-Kartenspiel, das historische Themen mit strategischem Gameplay verbindet. Entdecken Sie mehr auf GladiatorsBattle.com.
? Entdecken Sie mehr:
Terokai Pertempuran Gladiators: Melangkah ke dunia pahlawan purba dan pertempuran epik di https://gladiatorsbattle.com.
GitHub: Lihat contoh dan projek kod di https://github.com/HanGPIErr.
LinkedIn: Ikuti kemas kini di https://www.linkedin.com/in/pierre-romain-lopez/.
Twitter: Kekal berhubung di X di https://x.com/GladiatorsBT.
Artikel ini ialah pintu masuk anda untuk membina elemen web yang menakjubkan dan interaktif secara visual. Sertai kami sambil kami terus meneroka cara untuk menggabungkan teknologi canggih dengan reka bentuk intuitif dan berkualiti tinggi.
Atas ialah kandungan terperinci Membina Kad Profil AR dengan Pengesanan Wajah Masa Nyata. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











Saya melihat Font Google melancarkan reka bentuk baru (tweet). Berbanding dengan reka bentuk besar yang terakhir, ini terasa lebih berulang. Saya hampir tidak dapat memberitahu perbezaannya

Pernahkah anda memerlukan pemasa undur dalam projek? Untuk sesuatu seperti itu, mungkin semula jadi untuk mencapai plugin, tetapi sebenarnya lebih banyak lagi

Semua yang anda ingin tahu mengenai atribut data dalam HTML, CSS, dan JavaScript.

Pada permulaan projek baru, kompilasi SASS berlaku dalam sekejap mata. Ini terasa hebat, terutamanya apabila ia dipasangkan dengan BrowserSync, yang dimuat semula

Tartan adalah kain berpola yang biasanya dikaitkan dengan Scotland, terutamanya kilt bergaya mereka. Di Tartanify.com, kami mengumpulkan lebih dari 5,000 Tartan

Arahan template inline membolehkan kita membina komponen Vue yang kaya sebagai peningkatan progresif ke atas markup WordPress yang sedia ada.

Templat PHP sering mendapat rap buruk untuk memudahkan kod subpar - tetapi itu tidak perlu berlaku. Mari kita lihat bagaimana projek PHP dapat menguatkuasakan asas

Kami sentiasa mencari untuk menjadikan web lebih mudah diakses. Kontras warna hanya matematik, jadi Sass dapat membantu menutup kes -kes kelebihan yang mungkin dilewatkan oleh para pereka.
