Video yükleniyor...

Video Yüklenemedi

Ana Sayfaya Dön

As I promised yesterday, I'll briefly explain LoRA training and share a workflow I made so you can do it quickly. First, let me answer a very common question: 'Why train LoRAs when we have such advanced models?' Even though we have incredibly advanced models now (like NBP), we...

15,184 görüntüleme • 6 ay önce •via X (Twitter)

0 Yorum

Yorum bulunmuyor

Orijinal gönderinin yorumları burada görünecek

Benzer Videolar

📢📢 𝐀𝐯𝐚𝐭𝟑𝐫 📢📢 Avat3r creates high-quality 3D head avatars from just a few input images in a single forward pass with a new dynamic 3DGS reconstruction model. Video: Project: Our core idea is to make Gaussian Reconstruction Models animatable. We find that a simple cross-attention to an expression code sequence is already sufficient to model complex facial expressions. We then incorporate position maps from DUSt3R and feature maps from Sapiens to facilitate the prediction task. While DUSt3R's position maps act as a pixel-aligned initialization for the Gaussians' positions, the Sapiens feature maps help the cross-view transformer to match corresponding image tokens in the 4 input images. One major challenge in creating a 3D head avatar from smartphone images comes from inconsistent facial expressions when the subject could not remain perfectly static during the capture. We eliminate this static requirement by simply showing our model input images with different facial expressions during training. This technique makes our model robust to inconsistent input images later on. Finally, we show that despite the model has been trained with 4 input images, one can even create a 3D head avatar when only a single image is available. To achieve this, we employ a pre-trained 3D GAN to lift the single image to 3D and then render the 4 input images for our model. This allows us to create 3D head avatars from single images and even highly out-of-distribution examples like AI generated faces, paintings or statues. Great work by Tobias Kirschstein from his internship at Meta with Javier Romero, Artem Sevastopolsky, and Shunsuke Saito

Matthias Niessner

74,763 görüntüleme • 1 yıl önce

All these demo videos make HEAD SWAPPING with Nano Banana look so easy, but then you give it a try and you're like... uh... what? Why didn't that work? Here's what I've found. Nano Banana reads your image, almost literally, so if you write on the image, it reads the text. This is how Higgsfield AI 🧩 has capitalized on the tech: "Write on the image" and give it direction, right? Totally true, but you don't need Higgi to write on your image. Nano Banana will understand your direction regardless of where you write on your image. On one hand, Higgi is really smart, because they're hranessing the tech in a unique way, but the whole "Higgsfield's Banana Placement" is a bit of a misnomer. It's more of a "Banana Placement" and Higgi is just giving you a sort of basic Photoshop-type tool to work with (again, pretty smart), but the real tech is the Banana. 🍌 This is how I head swapped heads in Runway, but Nano Banana maintains the aesthetic qualities of your image almost perfectly, whereas Runway Reference spits out a very Gen-4 looking image. I like using Nano in Freepik (now Magnific), mainly because it's fast and I can get 4 gens at a time, and you need to gen a dozen times of so before you get a winner (most of the time). I was pumped when I saw Freepik introduce the @ reference feature, just like Runway has, but it doesn't seem to work for head swapping. My guess is because that's not really how Nano Banana tech works... ideally. Marco is the person I saw using this "A" and "B" method, back when Nano was on LM Arena, and man-oh-man, it just works... like a charm. You need experiment with how much of the face you blot out, and the angle and facial expression of your new head if you want the blend to be perfect. All of the results in this video are 100% Nano Banana. I did not do any Photoshop work to the images after the fact. I really hope this helps. Let me know if you have any questions. I'm happy to help. And I'll keep posting videos like this if you guys find them useful. Let me know! And if you want more serious, one-on-one AI consultation you can throw something on the books here:

Jordan Daniel Chesney

62,089 görüntüleme • 11 ay önce

This is probably the most complex workflow I’ve ever built, only with open-source tools. It took my 4 days. It takes four inputs: author, title, and style; and generates a full visual animated story in one click in ComfyUI . I worked on it for four days. There are still some bugs, but here’s the first preview. Here’s a quick breakdown: - The four inputs are sent to LLMs with precise instructions to generate: first, prompts for images and image modifications; second, prompts for animations; third, prompts for generating music. - All voices are generated from the text and timed precisely, as they determine the length of each animation segment. - The first image and video are generated to serve as the title, but also as the guide for all other images created for the video. - Titles and subtitles are also added automatically in Comfy. - I also developed a lot of custom nodes for minor frame calculations, mostly to match audio and video. - The full system is a large loop that, for each line of text, generates an image and then a video from that image. The loop was the hardest part to build in this workflow, so it can process either a 20-second video or a 2-minute video with the same input. - There are multiple combinations of LLMs that try to understand the text in the best way to provide the best prompts for images and video. - The final video is assembled entirely within ComfyUI. - The music is generated based on the LLM output and matches the exact timing of the full animation. - Done! For reference, this workflow uses a lot of models and only works on an RTX 6000 Pro with plenty of RAM. My goal is not to replace humans, as I’ll try to explain later, this workflow is highly controlled and can be adapted or reworked at any point by real artists! My aim was to create a tool that can animate text in one go, allowing the AI some freedom while keeping a strict flow. I don’t know yet how I’ll share this workflow with people, I still need to polish it properly, but maybe through Patreon. Anyway, I hope you enjoy my research, and let’s always keep pushing further! :)

Lovis Odin

58,841 görüntüleme • 11 ay önce

CLIP by hand ✍️ ~ 13 steps walkthrough below CLIP, Contrastive Language-Image Pre-training, is OpenAI's answer to a question that sounds impossible: how do you put a sentence and a picture in the same space? CLIP shipped when OpenAI was still open, and those embeddings were shared far and wide. Almost every multimodal model you use today descends from them. How does it work? Goal: learn one shared embedding space for text and images. = 1. Given = A mini batch of three text-image pairs. OpenAI trained the original on 400 million. = 2. Text to vectors = Let us look up each word with word2vec. = 3. Image to vectors = We cut each image into two patches and flatten them. Now text and pixels are both just numbers. = 4. The other pairs = Repeat steps 2 and 3 for the rest of the batch. = 5. Encode = Let us push both sides through their encoders, a linear layer and a ReLU. In practice these are transformers, but the shape of the operation is the same. = 6. Mean pooling = We average across the columns, so each image and each sentence collapses to a single vector. = 7. Projection = The text vectors are 3D and the image vectors are 4D, so they cannot be compared at all. A linear layer projects both to 2D. That 2D space is the shared embedding space, and getting here is the whole point of the model. = 8. Prepare for matmul = Let us copy the text vectors down and the transposed image vectors across. = 9. MatMul = We multiply, which takes the dot product of every text vector with every image vector. Each cell is one estimate of how well a sentence matches a picture. = 10. Softmax, e to the power = Raise e to each cell. To keep it hand sized we approximate e with 3. = 11. Softmax, sum = Sum each row for image to text, each column for text to image. = 12. Softmax, normalize = Divide, and out come two similarity matrices, one per direction. = 13. Loss gradients = The targets are identity matrices: a pair that belongs together should score 1, every other cell 0. Subtract the target from the similarity and you have the gradients, in both directions. The takeaway: pairing a picture with a sentence comes down to a single dot product. Everything before step 9 is the work of getting them into one shared space, so that the dot product finally means something. 💾 Save this post!

Tom Yeh

20,750 görüntüleme • 14 gün önce

How to Bring Emojis to Life with AI (Yes, you read that right) 1. Choose the Emoji Wisely Prefer detailed emojis 👨‍🎤 The Man Singer emoji is a good example of this. Face, hair, outfit, mic... The more detailed, the better. 2. Prepare Your Original Image We'll be doing multi-enhancements, so the initial image shouldn't be too large. (I'll explain more about this shortly) I started with a 512x512px image. The smaller the image you start with, the more detail-oriented the enhancer tends to be. I usually use Figma for design and animations. However, you can use any other tool like Canva or Photoshop. Or just download it from somewhere. 3. Upload Your Image Go to Magnific's website and simply drag and drop your image there. 4. Setup the Parameters This is the fun part. You can experiment here to find your own settings or follow the method I used. I start with high creativity and low resemblance values. Depending on how far you want to deviate from the original image, you can increase this contrast. First Enhancing Creativity: 6 / Resemblance: -3 All Parameters Optimized for: Standard Creativity: 6 HDR: 0 (not a fan) Resemblance: -3 Engine: Automatic 5. The Prompt 🪄 Since Magnific uses Stable Diffusion's technology, it uses the same syntax for prompts. But you don't need to write very detailed prompts. Just state what you want to see. The trick here is to use prompt weights. You need to specify the features you want to emphasize like this: Bowie, Portrait photo of a male singer with blue hair, (detailed eyes:1.2), (detailed hair:1.2), (detailed fabric:1.1), (detailed mic:1.1), (realistic skin:1.5), ultra-realistic, 8k You can change the weight values between 1.0 - 2.0 6. Hit that Rainbow Button After a short wait, you'll have a 1024x1024px image. If you like the result, download the image for further enhancements. 7. Reenhancing The system supports up to approximately 4400 x 4400 px. This means we can enhance it two more times. 1x → 512x512px 2x → 1024x1024px 4x → 2048x2048px 8x → 4096x4096px Now, upload the image you downloaded again. This time, we bring the values closer to each other. Second Enhancing Creativity: 4 / Resemblance: -2 Third Enhancing Creativity: 2 / Resemblance: -1 The other values can remain the same. 8. Share what you create! That's it. Now you know everything I know. If you have any questions, don't hesitate to ask. And please share your creations with us. Happy Sunday everyone!

Dogan Ural

225,764 görüntüleme • 2 yıl önce

lando asked whether his relationship with oscar changed: “it's still the same. and i think we both are happy that that's how it is. it's because we both have a lot of respect for one another and we both understand the position that we're in. and we both treat the world of driving versus just personally what we're like away from the track, quite differently. that's how i've always been. i feel like i've always gone on well with my teammates since go-karting. i've always wanted to because it just makes my life more fun, more enjoyable and that's also why i'm here. it's because i love what i do, so the more i can do that, the better. but we still just very much understand that we're here, we work for mclaren, we want the best for the team. we work very hard and as drivers always do, you try and maximize your own performance more than anything. but then when we step out of the car, we can still have a joke. we still have laughs in our debriefs, and we still enjoy everything away from the track. so, no i think it's still better than ever in many ways. i think we're still very different people. he's very just calm down to earth, very relaxed, always looks just cool, and that's something i also admire quite a bit, is how just plain sailing he is with a lot of things. it's a good attribute to have. always hard to read what mood he's in, but i think probably for me, you see more visually kind of the moods i'm in. but otherwise, it's not like we go play golf together and do things like i have done with carlos, daniel i didn't play golf with. but we're still different people, but in terms of relationship, we get along well. we still work together well and i think it's still better than it's ever been”

ray

129,217 görüntüleme • 8 ay önce

CSS Tip! ✨ You can create these parallax effects and image cross-fades with scroll-driven animations 🤙 img { animation: fade; animation-timeline: view(); mix-blend-mode: plus-lighter } img:last-of-type { animation-direction: reverse; } @​keyframes fade { to { opacity: 0; }} This one's fun! 😁 The trick with the cross-fading image is to make use of one animation that runs at the same time on two images inside a container. You use the same animation, animation-timeline, and animation-range. But, you use animation-direction: reverse on one of the images so they go in the opposite direction 🫶 The use of mix-blend-mode: plus-lighter; produces a better cross-fade result 💯 A viewTimeline (view()) works because you know that both images are the same height. The range you can use is img { animation-timeline: view(); animation-range: cover 45% cover 55%; } That means when the image has covered 45% of the scrollport (In this case, the window), start the animation. And finish when it has covered 55% 🎬 How about the slight parallax? This is a trick with calc(). You know the top of the small image and the big image line up. And you can do this by absolutely placing the caption outside of the small image. The trick is to translate the small image by a distance so it lines up with the bottom of the big image. You can do that like this :root { --catch-up: calc( var(--big-height) - var(--small-height) ); } @​keyframes move { to { translate: 0 var(--catch-up); }} Then drive that animation with a scroll-driven animation using the container of both images as the driver 🤙 /* section contains both images */ section { view-timeline: --container; } .img-fader { animation: catch-up both linear; animation-timeline: --container; animation-range: 50vh calc(100vh + (var(--big-height) * 0.25)); } That's it! Scroll-driven image cross-fading and parallax effects without any JavaScript. This demo will work in all browsers as there is some JavaScript in place where the API isn't supported 🤙 To do that, it uses GSAP ScrollTrigger 🏆 As always, any questions, requests, etc. hit me up! 🤙 CodePen.IO link below 👇

jhey ʕ•ᴥ•ʔ

242,205 görüntüleme • 2 yıl önce