OpenCV Python Tutorial #2 - Image Fundamentals and Manipulation

Поделиться
HTML-код
  • Опубликовано: 10 май 2024
  • Welcome to the second video of the series on OpenCV and Python. I'll start this episode with Image Manipulation, how images are represented in the computer. I'll also give you information on how images work as they are going to be very important for this series.
    💻 AlgoExpert is the coding interview prep platform that I used to ace my Microsoft and Shopify interviews. Check it out and get a discount on the platform using the code "techwithtim" algoexpert.io/techwithtim
    📄 Relevant Documentation: opencv-python-tutroals.readth...
    📝 Code For This Series: github.com/techwithtim/OpenCV...
    📺 Fix Pip on Windows: • How to Install Pygame ...
    📺 Fix Pip on Mac: • How to Install Pygame ...
    🔍 Playlist: • OpenCV Python Tutorials
    ⭐️ Timestamps ⭐️
    00:00 | Intro
    01:45 | Image Representation
    04:02 | Values that Represent our Pixels
    07:20 | Accessing Pixel Values
    08:45 | Changing Pixel Colors
    11:37 | Copying & Pasting Parts of Image
    15:07 | Outro
    ◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️
    💰 Courses & Merch 💰
    💻 The Fundamentals of Programming w/ Python: tech-with-tim.teachable.com/p...
    👕 Merchandise: teespring.com/stores/tech-wit...
    🔗 Social Medias 🔗
    📸 Instagram: / tech_with_tim
    📱 Twitter: / techwithtimm
    ⭐ Discord: / discord
    📝 LinkedIn: / tim-ruscica-82631b179
    🌎 Website: techwithtim.net
    📂 GitHub: github.com/techwithtim
    🔊 Podcast: anchor.fm/tech-with-tim
    🎬 My RUclips Gear 🎬
    🎥 Main Camera (EOS Canon 90D): amzn.to/3cY23y9
    🎥 Secondary Camera (Panasonic Lumix G7): amzn.to/3fl2iEV
    📹 Main Lens (EFS 24mm f/2.8): amzn.to/2Yuol5r
    🕹 Tripod: amzn.to/3hpSprv
    🎤 Main Microphone (Rode NT1): amzn.to/2HrZxXc
    🎤 Secondary Microphone (Synco Wireless Lapel System): amzn.to/3e07Swl
    🎤 Third Microphone (Rode NTG4+): amzn.to/3oi0v8Z
    ☀️ Lights: amzn.to/2ApeiXr
    ⌨ Keyboard (Daskeyboard 4Q): amzn.to/2YpN5vm
    🖱 Mouse (Logitech MX Master): amzn.to/2HsmRDN
    📸 Webcam (Logitech 1080p Pro): amzn.to/2B2IXcQ
    📢 Speaker (Beats Pill): amzn.to/2XYc5ef
    🎧 Headphones (Bose Quiet Comfort 35): amzn.to/2MWbl3e
    🌞 Lamp (BenQ E-reading Lamp): amzn.to/3e0UCr8
    🌞 Secondary Lamp (BenQ Screenbar Plus): amzn.to/30Dtafi
    💻 Monitor (BenQ EX2780Q): amzn.to/2HsmUPZ
    💻 Monitor (LG Ultrawide 34WN750): amzn.to/3dSD7tS
    🎙 Mic Boom Arm (Rode PSA 1): amzn.to/30EZw9m
    🎚 Audio Interface (Focusrite Scarlet 4i4): amzn.to/2TjXsih
    💸 Donations 💸
    💵 One-Time Donations: www.paypal.com/donate?hosted_...
    💰 Patreon: / techwithtim
    ◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️
    ⭐️ Tags ⭐️
    - Images within OpenCV
    - Image Manipulation OpenCV
    - Image Fundamentals OpenCV
    - Python
    - Computer vision
    - Pip on Windows Mac
    ⭐️ Hashtags ⭐️
    #OpenCV #Python

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

  • @raghavgupta6446
    @raghavgupta6446 3 года назад +71

    I really hope he completes the series and does not drop it midway.

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

    Thanks for taking the time to explain how the numpy array elements correlate to the image pixel positions. Super simple but super helpful!

  • @kunalbhatt4333
    @kunalbhatt4333 3 года назад +8

    You explain the concepts really well in a student-friendly manner! I was trying to learn openCv for my college project but was getting intimidated by the other tutorial videos..........yours are VERY HELPFUL! ,........................................................................................keep it up!

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

    Awesome graphics during the video. Excited for the series. Really appreciate the efforts you are putting for the viewers. Great videos as always.

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

    Love this series of open CV ❤❤

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

    Keep it up! Great work, Always loved your content, inspired me to start my own channel, and still teaching me great things! Thanks a lot!

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

    Yessir, more please these are perfect!

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

    Thanks Tim, this Serie is very interesting .. please do more especially : batch images processing and face recognition , cropping and labeling faces

  • @anirudhkumar7477
    @anirudhkumar7477 10 месяцев назад

    Amazing stuff! Thank you for the precision

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

    Thanks a lot sir🙏 please upload more videos of this series.

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

    Thanks for the subject and for the quality ! 😃🔥🔥

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

    Please cover all necessary basics of openCv.
    Appreciate your efforts !!

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

    Really nice and easy tutorial, thank you for this

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

    I am a fan of yours.
    Keep up the good work.
    1mil soon

  • @TheBeast-qm4de
    @TheBeast-qm4de 3 года назад

    Thx plz continue this series

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

    Was doing a project for my wife with images and this video just went live. Awesome!

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

    thanks for this tutoriel , looking for a future tutorial about OCR techniques, please

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

    Most of the youtubers told me, be good at one thing weather its cyber security, web development or machine learning and Al.
    But are excellent in both I follow everyones advice or try to be like you

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

    please continue this series

  • @jamesgilmore2389
    @jamesgilmore2389 4 месяца назад

    Excellent video. Thank you.

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

    This is so helpful. You are amazing

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

    Very cool and fun!! Thank you !!

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

    I'm doing OpenCV right now at school hahaha, it's so powerful. I'm even using it for my honours project

  • @davidcarlson2481
    @davidcarlson2481 2 года назад +9

    Nice work Tim! (
    It should be noted though, @5:45, changing from 255 to 128 will make it a darker blue, not lighter.)

    • @ultramadscientist
      @ultramadscientist 2 года назад +5

      For those who are wondering, in order to make a lighter blue you can keep blue channel 255 and make the red and green channels higher (i.e. bring the entire pixel closer to white)

  • @codingforcoder8995
    @codingforcoder8995 3 года назад +11

    Who the hell disliked this knowledge video

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

    Critically undersubbed, posting a comment to boost engagement!!! Great tutorials man, currently building a timetable system for my old man and needed someway to graphically build a time line image. Thought I'll pick whatever package that I can find a good youtube series for. so open CV for me. ty

  • @finix7419
    @finix7419 6 месяцев назад

    highly appreciated

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

    i'm interested in texture synthesis, specially using wang tiles. There's an article by cohen called "Wang Tiles for image and texture generation," which seems very clear about how the program should be written, but I yet have no idea how to start doing it. Maybe you could mention something about it, or give some hints?

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

    Hay men in other tutorial s I watch they all speak different thing so I am convinced ,but since numpy and opencv are related I think yeah great

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

    lovely Timmie

  • @user-zd6tu9zw2z
    @user-zd6tu9zw2z 2 года назад

    Thank you very much especially for the image numpy array representation. I didn't get how the array worked and everyone who tried to explain it, they didn't actually explain it. And what do you think I found that gem when I wasn't searching for it

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

    Excellent

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

    Love you videos :)

  • @chrismckinley3110
    @chrismckinley3110 3 года назад +13

    Having the computer play a game with using opencv as its "eyes" would be really interesting

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

    great video! Can anyone tell me why I got an error when trying to change the top 100 rows if I give the pixel its 3 values to change? If I use 4 values (just doing the random.randint(0,255) 1 more time than tim did in the video) it works how its supposed to.

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

    Hey tim please continue this series with tensorrt,cuda

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

    Does that mean that the Resize function is removing specific elements from the array?

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

    You mean I can generate my own image wow that good to know

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

    hey "tech with tim youtube ":) , I just started open cv course and I am really enjoying it :).
    but should I need to master the math behind openCV functions ???? to be a good programmer .........whatever :) ...........

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

    Hay Tim how can I use machine learning with opencv

  • @9nekanshjaiswal612
    @9nekanshjaiswal612 Год назад

    @TechWithTim
    I'm gettign the following error when i try to mainpulate the image
    img[100:450 , 500:900] = tag
    ValueError: could not broadcast input array from shape (200,500,3) into shape (350,400,3)

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

    Can you make video on OCR?

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

    I got 4 channels in my png. Is it CMYK or something ? Does the value also range from 0 to 255 too ?

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

    Nice. How to capture image from camera?

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

    nice 😍

  • @Magns-AI-m
    @Magns-AI-m Год назад

    Can we use any other tool to get the location of the object and then use open cv

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

    Tim, i need your help! I want to convert separate pdf files in a folder into separate text files in separate folder in python but always failed, please let me know how to do that...

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

    The "Relevant Documentation" - link in your description seems to not work anymore - just so you know

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

    pls do not stop

  • @prasannan-robots
    @prasannan-robots 3 года назад

    How it is showing that lower bar ([finished in])in sublime text?

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

    Do u remember evrthng or do u have to look up the terms when u change between languages does every programmer keep notes near and refer to if they dont knw the syntaxes and if u do tht would that make u a bad programer

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

    11:07 if we change the itration in for loop from 3rd or say 2nd row it displays and error why is that so ..?

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

    open cv is cool. but are there other image library in python, are they cool too? how can i choose between them.

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

    Tim amazing video, but I want to give you just one suggestion, don't change your outro music!

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

    Tim can you make video on FastApi pleass

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

    I can't find a way to tag/relocate and then resize the image. Tried to put the img=cv2.resize etc at several spots in the program. Doesn't work. Also my default image size is very large, can it be made smaller without a resize command?

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

      Forget above comment You can resize before setting tag= etc

  • @Mr_Gradak
    @Mr_Gradak 3 года назад +12

    I remember, couple months ago, i was messing around with those pixel values, creating hidden messages inside pictures. Then another code for decrypting it. Just tought I'd share, since it's quite interesting thing you can actaully share with your friends.
    I made console version, wich you control with simple commands.
    Basicly you'd say: i want to encrypt this {_message_} to this {_picture_} using this {_security code_} which is just some number you come up with that controls wich pixels will get changed. (Because changing the same pixels all over again won't remain secret for long, right? :D )
    And then the other side would just say: I want to decrypt message in this {_picture_} using this {_security code_} (same one as used for encrypting) and it will spit out the message.

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

      That sounds interesting. Could you please share the code so that I can try it out?

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

    please make android development tutorial tim !!

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

    The opencv documentation was so helpfull. and boy did the row and columns confuse me

  • @romeogaming6424
    @romeogaming6424 6 месяцев назад

    thank you so f*** much!

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

    please help me to make opencv to Pasting Images onto other Image with OpenCV using free moving

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

    The for loop is kind of complex

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

    Unused import statement 'import cv2' - I am getting this error for all packages when I use IMPORT. please help me in this

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

    when I print type(img) it says nonetype

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

    Pls try to upload two videos per day

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

    At 5.40 shouldn't 128 be darker blue? since 0 is black

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

      Umm no black is 0, 0, 0(blank for all) and In just one color if its 0, then it will be absolute blank. If its 255, Then its the darkest blue

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

      @@Lightningifyback I think u're misunderstanding something here. Firstly, by 0, i mean 0, 0, 0. And 255 is the *blue-est* blue, not the darkest blue. Maybe check the definition of dark?

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

    why random.randint(0,255) three times?

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

    I have a doubt: tag = img[500:700, 600:900] and tag = img[500:700][600:900]

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

    Second. I saw this vid had 1 view then after entering, there is 2 views

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

    You prolly won’t get back to me but I would love for you to tutor me or just guide me through a game a.I I’ve already learned python and pyautogui I’m now watching you to learn opencv 🙏🏽

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

      Hi, sorry hmm do you know any good documentation for OpenCV?
      The documentation link in the description is abandoned...
      Thk for answer...

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

    Hi TWT I have a Fiverr account but I don't get customers I would really appreciate your help to get those thanks!!!

  • @ati-9021
    @ati-9021 2 месяца назад

    Relevant Documentation does not open :(

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

    Wooo

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

    For anyone interested, The IDE being used is sublime text.

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

    for some unknown reason this video doesnt play for me

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

    Hi twt how much will cost that you mention my Fiverr gig in your video and put the link in the description, I'm almost 13 years old And I want to make a little bit of money that I'm not pointless in this world/life and get mom and dad proud?

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

    that one dislike is wrong

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

    685th view

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

    third

  • @spider-maninside5401
    @spider-maninside5401 3 года назад

    FIRST VIEW HAHA

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

    Man, so opencv is just a photoshop for programmers🤣

  • @ruelagnes4277
    @ruelagnes4277 6 месяцев назад

    its good but the problem you don want to explain if youre not sure of the answer thats the problem with your videos,

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

    You need to slow down and explain more. You explain one thing fine and then just blow through the next two. This isn’t teaching. It’s trying to show everyone how smart you are.

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

      I appreciate the feedback. Would you mind listing what you felt I didn’t explain well enough? Believe it or not I don’t really care how smart u think I am and I do actually try to explain everything, it’s just that if I were to explain every single character of the code my videos would be 3 hours long and no one would watch them 🤷‍♂️

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

      Slow the video down to 0.5 or look at opencv documentation. He is explaining everything that he goes through if you are listen.

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

    please make android development tutorial tim !