What are affine transformations?

Поделиться
HTML-код
  • Опубликовано: 4 ноя 2024

Комментарии • 155

  • @altaroffire56
    @altaroffire56 3 года назад +118

    Visualising matrix elements as dials is genius!
    Glad to see a new video and excited for what comes next. :)

  • @dosu5064
    @dosu5064 Год назад +13

    Best tutorial. It doesn't give you a formula to summarize, it gives INTUITION. Greate job

  • @Adeith
    @Adeith 3 года назад +66

    I kinda knew this but seeing it really helps. Especially that third row.

    • @LeiosLabs
      @LeiosLabs  3 года назад +10

      Yeah, I was the same way! I was hoping this helped someone who was also in the same boat!

    • @AngryArmadillo
      @AngryArmadillo 3 года назад +2

      Same here

  • @dofalol
    @dofalol 3 года назад +30

    Great visualization with the "dials" in the matrix and very nice way of connecting 2D transformations with the side of a 3D cube. I never saw it so neatly presented.

  • @swamihuman9395
    @swamihuman9395 2 месяца назад +1

    - Great job; well presented.
    - Does indeed get at good intuition.

  • @Magnasium038
    @Magnasium038 2 года назад +7

    Wow, never thought of visualizing the elements as controling shearing and scaling. And consolidating 2D affine into 3D linear is just wonderful

  • @ekurtoglu
    @ekurtoglu Год назад +1

    An excellent piece of video. Teaches you 2 days of studying the topic on the article. I can't imagine the effort being put onto these visualization tho. Thanks!

  • @wargreymon2024
    @wargreymon2024 Год назад +2

    This is the best explanation of affine transformation out there

  • @rupert7003
    @rupert7003 3 года назад +1

    I really enjoyed this explanation - one of the best I have seen. I particularly liked your dial visualisation! I always knew it did that but seeing each dial and how the vertices moved accordingly really made it click - especially in the 3D mapped to 2D case.

  • @subramanyam2699
    @subramanyam2699 Год назад +1

    No budy in the world had ever taught math like this!! Thanks a lot ❤

  • @Mutual_Information
    @Mutual_Information 3 года назад +1

    Very cool! The perspective of holding all matrix values except one constant and shifting it while seeing the effect on the square is new to me. Great stuff, keep it up, subscribed!

    • @LeiosLabs
      @LeiosLabs  3 года назад

      Happy to hear it was useful!

  • @kartikpodugu
    @kartikpodugu Год назад

    with visualizations, the affine transformations are illustrated in a very simple and easy to understand manner. very thanks

  • @muhammadtayyabtahirqureshi7186
    @muhammadtayyabtahirqureshi7186 10 месяцев назад +1

    absolutely amazing

  • @abhideshmukh2182
    @abhideshmukh2182 3 года назад +5

    Sometimes i really feel tht this is very underrated math channel ❤️🔥

    • @LeiosLabs
      @LeiosLabs  3 года назад +2

      Glad you like the content!

  • @rikkertkoppes
    @rikkertkoppes 3 года назад +5

    My intuition is that the columns in the matrix tell you where the (tips of) the unit vectors end up. In my mind, I also picture it as viewing from the top at z=1 so that the last column works properly. That way I can quickly create a grid from those vectors and draw the shape in that transformed grid

    • @LeiosLabs
      @LeiosLabs  3 года назад +1

      Yeah, this was the way 3blue1brown showed it in his video on linear transformations. I didn't exactly want to tread the same ground ^^

  • @zmcai1978
    @zmcai1978 3 года назад

    your detailed explanation in algorithm archive really amazed me!!

  • @waiyulai5392
    @waiyulai5392 2 года назад +1

    You are talented. Please upload more of your videos.

  • @0hellow797
    @0hellow797 3 года назад +5

    Please make more videos this is great

    • @LeiosLabs
      @LeiosLabs  3 года назад +4

      New videos are on the way (along with chapters and other cool projects)!

  • @usama57926
    @usama57926 2 года назад +1

    great explanation

  • @giusepperana6354
    @giusepperana6354 3 года назад

    I was a little put off by the exaggeratedly compassionate soft warm voice but the visualization gave me a really nice mind blown moment. Thanks!

  • @mazegamerz3178
    @mazegamerz3178 3 года назад +1

    Thats insane , a nother video about it please , the couple passed days ive just start digging about it , and yeah here u ar .
    More detailed video would be pleasuer.
    Great work man !

    • @LeiosLabs
      @LeiosLabs  3 года назад +1

      Glad you liked it!

  • @Jimserac
    @Jimserac 3 года назад +2

    My God, if only this sort of explanation was available back in the 70's when I was studying calculus and advanced math. Eventually, I even had a set of microfilms of Oliver Heaviside's notebooks and was working through and following his work. Eventually I moved on to software work and donated it all to the Brown Univ. Electrical Engineering Dept. where, I'm sure, it was long since lost and forgotten.

  • @hhcoyotle655
    @hhcoyotle655 3 года назад +5

    This is a great video about tensors ! You should totally do a video about fluid mechanics and Reynolds stresses ^^

  • @duality4y
    @duality4y 3 года назад +4

    That is so cool can't wait to see what's next.

  • @sando_7
    @sando_7 3 года назад +1

    So mesmerizing.. A beautiful intuitive explanation I've ever seen! Thank you bro!

  • @mossylikescake
    @mossylikescake 3 года назад +3

    The science boss is back! I must say Jimmy that you are looking affine! Great video, but what I'm really wondering is..... how does this transformation relate to the tesseract?

    • @LeiosLabs
      @LeiosLabs  3 года назад

      The projection matrices from 4d -> 3d are kinda the same in a way. In addition, the transformation matrices used in my video on the topic are affine.

    • @mossylikescake
      @mossylikescake 3 года назад

      @@LeiosLabs I feel a related tesseract video is in order! Also the youtube algorithm will love you

  • @sampritineog7787
    @sampritineog7787 3 года назад +1

    That was a great video to get a intuition. Hope to see your next video soon.

  • @prathameshdinkar2966
    @prathameshdinkar2966 2 года назад

    The concept is super awesome!! Hope every high school teacher introduces matrix in such intuitive ways!!

  • @rjtimmerman2861
    @rjtimmerman2861 2 года назад +1

    In my book, matrices were explained with some abstract definition (great for math student's first course...), and as a system of linear equations
    From 3blue1brown's videos I've learned to see the columns as where the basis vectors land, which helped a great deal in the visualisations
    Now this seeing the numbers as dials really makes me feel like I understand how to look at the numbers of a matrix and see it's effect as a transformation, especially combined with 3b1b's basis column visuals

  • @user-vn7ce5ig1z
    @user-vn7ce5ig1z 3 года назад +8

    That was a great explanation and clearly showed the connection and translation (pun intended) from numbers to graphics. 👍

  • @ETeHong
    @ETeHong 2 года назад

    your visualization works are awesome!

  • @gustavosilveirafrehse1508
    @gustavosilveirafrehse1508 3 года назад +5

    woahh, was just learning opengl and wondering why the need of vec4/mat4 instead of vec3/mat3x3. Really well made video!

    • @LeiosLabs
      @LeiosLabs  3 года назад +1

      Ah, that's a good application!

  • @SpamTheHorse
    @SpamTheHorse 3 года назад +6

    This was an interesting and helpful visualization of affine transformations. I liked linear algebra, programming, and their applications in games, and I always wondered how to visualize the points of the 2d affine transformation in 3d space. I also never noticed that the rotation matrix could also be a composition of shearing and scaling (but also I learned that it is also a composition of two reflections).

  • @michaelcharlesthearchangel
    @michaelcharlesthearchangel Год назад

    I love the use of dialogy to solve the matrix math problem of representation. In a quantum system of adjustment, a "::" has toggles and sliders to shift coupled AI perception. Since a "::", ":;", ";:", etc. is bijective and modular between containers.

  • @chrisbibat
    @chrisbibat 3 года назад +4

    The way you explained how translation works with the homogenous coordinate was awesome, I finally understand it now :)
    If we're only concerned about 2D, what would happen if that third coordinate is not 1?

    • @LeiosLabs
      @LeiosLabs  3 года назад +1

      Sorry, somehow only seeing this comment now. I show that in the algorithm archive (and also as a brief side-note at the end of the video), but this essentially scales the z axis.

  • @nitinkumarmittal4369
    @nitinkumarmittal4369 3 года назад

    Best explanation for affine transformations

  • @SunnyGirl135
    @SunnyGirl135 3 года назад +1

    Really useful - quick and comprehensible. Thank you!

  • @kateluerken4109
    @kateluerken4109 2 года назад

    You are a god at communicating this stuff dude, thank you!

  • @Hunar1997
    @Hunar1997 3 года назад +2

    That was an amazing perspective to look at it..

  • @EngideerTech
    @EngideerTech 11 месяцев назад

    Absolutely amazing explanation, thank you so much! Way more intuitive than my course material.

  • @ManiacEditz
    @ManiacEditz 2 года назад +8

    hi. james was it? anyways, im one of your mom's students

    • @LeiosLabsLive
      @LeiosLabsLive 2 года назад +1

      Haha, that's great! From the elementary school?

    • @ManiacEditz
      @ManiacEditz 2 года назад +1

      @@LeiosLabsLive yeah

    • @cringy7-year-old5
      @cringy7-year-old5 9 месяцев назад +2

      crazy line of addressal

    • @ManiacEditz
      @ManiacEditz 9 месяцев назад

      @@cringy7-year-old5 💀

    • @MushroomBase
      @MushroomBase 2 месяца назад

      Well she doesnt like her 6th grade students ..
      Just focus on Jesus man...
      Your mom and I are talking about what the next step is with you. We're concerned you may need meds

  • @bentationfunkiloglio
    @bentationfunkiloglio 2 года назад

    This visuals are great. Really enjoyed this video.

  • @guyindisguise
    @guyindisguise 3 года назад +1

    Great mental model with the horizontal/vertical/diagonal dials. Love it!
    Any teaser on what topics we get to look forward to with your videos in 2021?

    • @LeiosLabs
      @LeiosLabs  3 года назад +1

      I guess the best teaser would be to "DNA digivolve my existing videos."

    • @guyindisguise
      @guyindisguise 3 года назад

      ​@@LeiosLabs Had to google that (non-digimon-viewer), sounds interesting, can't wait!

    • @LeiosLabs
      @LeiosLabs  3 года назад

      @@guyindisguise in hindsight, I should have just said "mix." Sorry for the confusion!

  • @刘智宇-v1t
    @刘智宇-v1t 2 года назад

    Thanks a lot,it's clear and intuitive.

  • @catbook628
    @catbook628 9 месяцев назад

    actually great, and intuitively easy to understand, explanation

  • @andrey730
    @andrey730 Год назад

    Those are really cool ideas! I certainly like more the one that translation by using augmented matrix is basically a shear using 4th dimension.
    But the one about rotation = shear + scale is certainly adds to understanding to how a shear works for me.

  • @protocol6
    @protocol6 3 года назад +1

    Nice. I like the visualizations.
    You can also do this in an extended complex form with √k instead of i. If I remember correctly, k is cotangent to the angle of a line through the origin from the lower left to the upper right corners. The sign of k defines whether it is stretching or skewing and whether rotations are elliptic or hyperbolic. At 45⁰, it's circular rotation if negative. If positive, the angle is of the asymptote of the rotational hyperbola. It can be more computationally and space efficient than matrices in some cases.
    You might be able to do the same hacky combination of the affine using a similarly extended quaternion but I haven't tried that yet.

    • @LeiosLabs
      @LeiosLabs  3 года назад

      This is an interesting perspective I had not thought about. I need to look into it more! Thanks for the comment!

    • @protocol6
      @protocol6 3 года назад

      @@LeiosLabs I have yet to find anyone else using them this way so that's nice to hear. I expect someone does, I just haven't figured out what they call it.
      People usually stick to a k of -1, 0, or 1 (Complex, Dual and Split-complex) and never mix them other than hierarchically but it's possible to generalize the algebra, the trigonometric functions and even flip the sign of k (swap the real and norm) and do operations between numbers with different k values. I find it useful for things like orbital dynamics and relativistic physics. Also unit conversions as |k| is effectively the ratio of the units of the real and imaginary part... such as k=1/c for dτ=||dt+dx√k|| which I find less messy than using cdτ (ds) and cdt everywhere-at least in software where I need to retain time and proper time in time units, for instance, rather than length units.

  • @aresharesh8671
    @aresharesh8671 3 года назад +4

    Great video! Homogenous coordinates are an awesome topic and (in my opinion) not hacky at all! I'd love to see more on them

    • @LeiosLabs
      @LeiosLabs  3 года назад +4

      To be fair, I played up the "hackiness" of them too much. You are 100% right!

  • @user-hp6ls8qy6d
    @user-hp6ls8qy6d Год назад

    Great idea with the dials!

  • @RandomGuy-ie2cb
    @RandomGuy-ie2cb 2 года назад

    Great video!! Jusr finished linear algebra course and watching those kind of explanations is awesome and inspiring!

  • @vroomik
    @vroomik Год назад

    I've just started watching , it's so good, have you been teaching?

  • @breakdancerQ
    @breakdancerQ 2 года назад

    visualisations just make this thing a whole lot more sensible!

  • @pavelperina7629
    @pavelperina7629 3 года назад

    I understand matrices in completely different way that allows me to construct them directly.
    Multiply matrix times vectors by hand writing down complete equations like v.x'=v.x*r1c1+v.y*r1c2+v.z*r1c3 (normally m11... or m00..., i wanted to make clear what is row and column)
    Now try unit vector v.x=1. You will notice that first column is basically how will transformed unit vector x look like. Second column is for vector y, third for z.
    If you take any vector you can write it as sum of unit vectors with some scale so it can transform any vector.
    Do you want rotation by 30 degrees? Ok. Let's start with x. Ok, unit vector x will be tranformed into cos30 in x and sin30 in y -> first column. vector y will be transformed into something pointing left and up, so -sin30 in x and cos30 in y -> second column. Do you want translation for points, but not vectors? Expand matrix to 3x3, assign z=1 to points and z=0 to vectors. Write translation in tx,ty to third column and let r3c3=1. Now if v.z is equal 1, it will be transformed into vector tx,ty and z will remain 1. If original vector had v.z=0 it won't be affected by translation and z will remain 0. You may ignore that z is "borrowed" from 3rd dimension and you may call it w to make it less confusing and compatible with 3D transformations.
    This way you can even do some stuff like align two 3D objects, e.g to align screw with hole in some mechanical part if you can measure some vectors and points for reference.

  • @EvanMcLaren
    @EvanMcLaren Месяц назад

    This was so clear. Thank you!

  • @computer-love
    @computer-love 3 года назад +2

    yay, new leios~

  • @velocibeaver8537
    @velocibeaver8537 2 года назад

    This is a very clear intuitive explanation man, thanks!

  • @patrickstival6179
    @patrickstival6179 Год назад

    Awesome video. Super easy to follow

  • @nohaelhaddad4425
    @nohaelhaddad4425 3 года назад

    Great Visualization

  • @freddupont3597
    @freddupont3597 3 года назад +1

    What a great and clear video!

    • @LeiosLabs
      @LeiosLabs  3 года назад +1

      Glad you liked it!

  • @priyanshukumawat4142
    @priyanshukumawat4142 3 года назад +3

    HOPE YOU WERE THERE IN MY COLLEGE AS MY PROF.

  • @alegian7934
    @alegian7934 3 года назад +2

    Great vid! Ive been learning tensors recently so - are there any plans for a relative video?

    • @LeiosLabs
      @LeiosLabs  3 года назад +1

      What do you want to learn about tensors?

    • @alegian7934
      @alegian7934 3 года назад +1

      @@LeiosLabs :D I guess any practical application? Or (perhaps more theoretical than this channel usually posts) exploration of covariance / contravariance?

  • @CaptchaSamurai
    @CaptchaSamurai 3 года назад

    Great idea with matrix of dials!

  • @suprecam9880
    @suprecam9880 3 года назад

    Thanks brother! Great video

  • @chaoukimachreki6422
    @chaoukimachreki6422 2 года назад

    You are amazing brother ! Halelujah

  • @saulesha123
    @saulesha123 3 года назад

    so cool explanation!

  • @ashishjain871
    @ashishjain871 3 года назад

    Beautiful :). Great animations; very intutive.

  • @munemshahriar1493
    @munemshahriar1493 3 года назад

    I really liked the graphic work you did in the video. Can you please tell me how you did it?

  • @rohanhabu
    @rohanhabu 2 года назад

    Fantastically explained! 👍🙂

  • @benediktrein8888
    @benediktrein8888 2 года назад

    awesome explanation

  • @OrenLikes
    @OrenLikes 8 месяцев назад

    nice!
    i am looking for grid deformation due to straightening a function.
    say i am traveling along y=0, in our 3d world (z=0), using perspective, i'd see equally deformed "squares" on both my sides.
    in 2d, the cartesian grid will not change, as the line is straight and parallel to the x-axis.
    I would like to "see" what happens to the grid if i travel along y=x, and if i make the graph a straight horizontal line.
    same for y=x^2 and for y=x^3 and for y=sin(x).
    can you point me in the right direction?
    thank you!

  • @Jack-dx7qb
    @Jack-dx7qb 2 года назад

    "rotation = scaling + shearing"
    BAM!!!

  • @shanmukeshr1696
    @shanmukeshr1696 3 года назад +1

    After too many long days

  • @annaly2318
    @annaly2318 2 года назад

    thanks for making this video... makes math so much easier!

  • @lunafoxfire
    @lunafoxfire 3 года назад +1

    interesting perspective!

  • @dutonic
    @dutonic 7 месяцев назад +1

    This is a weird comment. But I feel like your voice doesn't match your face. Like I've never felt this way before in my life and it's really strange. It's not an insult at all. You have both a nice voice and nice face! It's just super weird seeing you sound like that. Idk how to describe it!!! It's crazy. Has anyone said this to you before?
    Awesome video btw. I'm studying fractal topology and this was super helpful!

    • @LeiosLabs
      @LeiosLabs  7 месяцев назад

      Been on RUclips and twitch for years and have never heard that specifically. I have been told I sound like a teenager / feminine / nerdy when it's just my voice.

    • @LeiosLabs
      @LeiosLabs  7 месяцев назад

      And I guess the fractal work is with IFSs, which is why you need affine transforms?

    • @dutonic
      @dutonic 7 месяцев назад +1

      @@LeiosLabs IFS is the goal I'm working toward! I'm still new to the subject. Working through the first chapter of "Fractal Geometry" by Kenneth Falconer.

    • @LeiosLabs
      @LeiosLabs  7 месяцев назад +1

      @@dutonic yeah, IFSs are really fun. I actually use them all the time for various tasks. There will (hopefully) be a video later this year showing how useful they are

  • @skit555
    @skit555 3 года назад +1

    Could have been awesome if you tried the hypercube that way ^^

    • @LeiosLabs
      @LeiosLabs  3 года назад +1

      Honestly, one of the main reasons I made this video was because of the confusion in the comment section for that video... but seeing the projection matrix from 4D -> 3D would be cool!

  • @MrRyanroberson1
    @MrRyanroberson1 3 года назад +1

    now if only there were a way to easily slice a geometric figure with an n-1 dimensional knife

    • @LeiosLabs
      @LeiosLabs  3 года назад

      Haha, yeah. I thought about adding that slice to the 3D visualizations. Looking back, I probably should have!

    • @MrRyanroberson1
      @MrRyanroberson1 3 года назад

      @@LeiosLabs i was more wondering... if there were some kind of efficient way to start with a cube and end with an arbitrary polygonal cut of the cube

  • @esaskhan95
    @esaskhan95 3 года назад

    Its staying in the head for longer after watching this video!

  • @mohammedbelgoumri
    @mohammedbelgoumri 3 года назад +2

    Like before I even watch

    • @LeiosLabs
      @LeiosLabs  3 года назад

      I hope I didn't disappoint!

  • @brainfreeze7979
    @brainfreeze7979 3 года назад +2

    How do you make animations like in this video? Could you do a “how to”?

    • @LeiosLabs
      @LeiosLabs  3 года назад +1

      I used to stream the process every day, but stopped due to time constraints and low engagement

    • @brainfreeze7979
      @brainfreeze7979 3 года назад

      @@LeiosLabs would any of those streams be available somewhere? A second channel or twitch or other? I’d love to see one. I don’t think I’d have the skill to do it anyway I’m just curious about the process. Thanks.

    • @LeiosLabs
      @LeiosLabs  3 года назад +2

      @@brainfreeze7979 on mobile, but a lot of them are backed up on my youtube channel simuleios. The twitch link is in the description.

    • @brainfreeze7979
      @brainfreeze7979 3 года назад

      @@LeiosLabs cool. Thanks very much

  • @esamalmohimmah3242
    @esamalmohimmah3242 3 года назад +1

    Excellent!

  • @hikikomorihachiman7491
    @hikikomorihachiman7491 2 месяца назад

    Thank you

  • @StarLight_tu
    @StarLight_tu 3 года назад

    I still have vague idea about matrix and sin/cos. Is there any visualize d material can help me get it easier?

  • @timanb2491
    @timanb2491 3 года назад +1

    great thank you

  • @user-wr4yl7tx3w
    @user-wr4yl7tx3w Год назад

    May be it was a bit fast but what is the benefit of adding an extra dimension in your last example?

  • @mastertine
    @mastertine 3 года назад +1

    that was soo cool 😊

  • @nguyenbaodung1603
    @nguyenbaodung1603 3 года назад

    so great !!

  • @shoam2103
    @shoam2103 3 года назад +1

    Affine transforms are just a subset of 3D transforms projected into 2D.. Maybe n to n-1 D too? What does it all mean??? 😖

  • @karelissomoved1505
    @karelissomoved1505 7 месяцев назад

    you cant rotate a square but you can rotate a cube and look only from the top

  • @MikailAkdeniz-c4q
    @MikailAkdeniz-c4q Год назад

    hello what is the difference between affine and mathomogeneous matrix

  • @poweredbysergey
    @poweredbysergey 3 года назад +1

    Cooler!

  • @swagatochatterjee7104
    @swagatochatterjee7104 3 года назад

    Hey won't you be teaching Julia class this year?

    • @LeiosLabs
      @LeiosLabs  3 года назад

      I might come in for a guest lecture, but I am no longer working at MIT

  • @m4y4nk
    @m4y4nk 3 года назад +3

    Long time no see. 🤨

    • @LeiosLabs
      @LeiosLabs  3 года назад +3

      Yeah, it has been a while! Sorry for the delay! I really do have a lot of plans for the rest of 2021 and intend to stick to them!

  • @xoppa09
    @xoppa09 Год назад

    why do people say an affine transformation means to 'forget the origin' , when you are clearing using the origin.

  • @softviz
    @softviz 3 года назад

    a green screen could help to look your demo better~?

  • @ahmetkarakartal9563
    @ahmetkarakartal9563 Год назад

    wow, super video

  • @mj2068
    @mj2068 7 месяцев назад

    good video.

  • @EEBADUGANIVANJARIAKANKSH
    @EEBADUGANIVANJARIAKANKSH 3 года назад

    may i know how to make these kind of videos ? this looks similar to 3b1b videos , is there any software for such video making ?

  • @dailymanb
    @dailymanb 2 года назад

    wow!

  • @gchinmayvarma9030
    @gchinmayvarma9030 3 года назад +2

    @leiosOS hello i have been watching your videos for quite a long while now, and I'd like to ask you if you knew about this programming language called processing? your style of making videos and math would translate (hehe) really well, maybe check it out!