Image Processing with OpenCV and Python

  Переглядів 116,484

Rob Mulla

Rob Mulla

День тому

In this Introduction to Image Processing with Python, kaggle grandmaster Rob Mulla shows how to work with image data in python! Python image processing is very important for anyone interested in computer vision and data science. Using the popular python packages matplotlib and opencv you will learn how to open image data, how the data is formatted, some ways to manipulate the data and save it off in a different format. If you enjoy you can also check out my live twitch streams (below). Image data is extremely powerful especially with machine learning and computer vision techniuqes becoming more common. Learn about this important part of your data science toolbelt!
Timeline
00:00 Intro
00:57 Imports
02:06 Reading in Images
04:20 Image Array
06:22 Displaying Images
07:14 RGB Representation
09:40 OpenCV vs Matplotlib imread
11:50 Image Manipulation
13:26 Resizing and Scaling
16:25 Sharpening and Blurring
19:03 Saving the Image
20:17 Outro
The notebook used in this video: www.kaggle.com/robikscube/wor....
Follow me on twitch for live coding streams: / medallionstallion_
Intro to Pandas video: • A Gentle Introduction ...
Exploritory Data Analysis Video: • Exploratory Data Analy...
Working with Audio data in Python: • Audio Data Processing ...
* UKposts: youtube.com/@robmulla?sub_con...
* Discord: / discord
* Twitch: / medallionstallion_
* Twitter: / rob_mulla
* Kaggle: www.kaggle.com/robikscube
#python #matplotlib #opencv #computervision #datascience

КОМЕНТАРІ: 72
@carloscaretti6223
@carloscaretti6223 5 місяців тому
Hi Rob, I want to thank you for sharing your videos. I' ve found them very useful to start my way on data science. Cheers from Argentina!.
@FilippoGronchi
@FilippoGronchi 2 роки тому
Thanks again Rob... Always very high quality content and lessons!
@robmulla
@robmulla 2 роки тому
Thanks Filippo!
@MrChaluliss
@MrChaluliss Рік тому
Using this to help with a final project for an intro to ML class in university. Really helpful to have such a well organized set of explanations. Even with small errors mentioned in the comments this is a really helpful resource. Thanks for your work Rob!
@robmulla
@robmulla Рік тому
Love that you found the video helpful. You should share it with the rest of your class! And have them share…. 😁
@princekha4540
@princekha4540 2 роки тому
Great video! Looking forward to watching more videos like this one. Wish you all the best ❤️
@robmulla
@robmulla 2 роки тому
Thanks so much Kha! I'm glad you found the video helpful.
@got2bharmony
@got2bharmony Рік тому
Excellent introductory video, well done. I'm highly motivated to go off and explore now.
@robmulla
@robmulla Рік тому
“Curiosity driven data science” is the mission statement of my channel. This comment makes me so happy because this video inspired you to be curious!
@awnikantdubey3133
@awnikantdubey3133 8 місяців тому
The representation of topic was very clear, precise and nice. I wish to see such tutorial on color image processing with wavelet transform and quaternions color image processing. Please make such video if possible. Thank you for such nice video
@johnbalatan8030
@johnbalatan8030 Місяць тому
compiler company should sponsor people like this, it will legit be the easiest way to get their compiler attention. Also thank you for making these videos and sharing your knowledge like this. Used it to unstuck myself for a uni project.
@arthurleaoteles9190
@arthurleaoteles9190 7 місяців тому
Awesome video, thanks man
@gangxaaku
@gangxaaku 2 роки тому
Great video as always!!
@robmulla
@robmulla 2 роки тому
I apprecaite that a lot Akshat!
@devoock
@devoock 2 роки тому
Hi, just a correction, in the blurring section, to generate a more blurred image you need to change the size of the kernel too, not just divide for a large number, that's why you get a darker image instead of a blurred one. Thanks for the video.
@robmulla
@robmulla 2 роки тому
Excellent point. Thanks for pointing that out.
@bofa722
@bofa722 4 місяці тому
Change the size to what? How does it have to match the number you divide by?
@meitoli
@meitoli Рік тому
thank you for your tutorial. What if I want to create for example animations based on the numpy array of an image. What next steps you suggest? Thanks!
@dbo8703
@dbo8703 28 днів тому
Mr Mulla, you are not a genius, you are a god ! Thanks for the inspiration !
@gouthamm
@gouthamm 10 місяців тому
@02:44: one second of OCD. Thank you!!!
@maryamkhorramdel8149
@maryamkhorramdel8149 Рік тому
Thanks for your video 😊
@robmulla
@robmulla Рік тому
Thanks for watching!
@kmonyt
@kmonyt Рік тому
Nice intro video. If you wanted future video suggestions, can you dive a bit deeper into how to manipulate those numpy arrays that contain image data? So things like np.transpose, np.where, using zip to extract pairs of coordinates, and so on. I know some of this isn't opencv perse, but that knowledge seems key to doing more complicated image processing, object detection, etc.
@robmulla
@robmulla Рік тому
Thanks for the suggestions. Diving deeper into numpy expressions would be important when working with images in numpy format. Maybe in the future I could cover it.
@meitoli
@meitoli Рік тому
i was thinking in using the image numpy array to create animations programmatically manipulating the values. Sounds coherent?
@mercedessanchez2025
@mercedessanchez2025 Місяць тому
Hi Rob thanks for the tutorial! Can you make one on analyzing trends with a large volume of images, common colors, materials, objects etc ?
@moose304
@moose304 2 роки тому
Really good presentation and content flow. I think THIS video would have been better without the kernel bits since it wasn't clear what the numerical values (of the kernels) were doing. A video focusing on kernels would actually be excellent all on it's own (with a deeper dive into them and what they're doing). Overall, still an excellent video though! Thanks!
@robmulla
@robmulla 2 роки тому
Thanks Dan, that's great feedback. I'm glad you liked the overall flow of the video. Now that you mention it the kernel stuff at the end was a bit forced. I keep trying to remind myself that short and sweet videos are better than overloading with too much information. Thanks for the feedback and I'll keep that in mind for the next video!
@AkaExcel
@AkaExcel 2 роки тому
# Dear Rob, thank you for sharing, you knowledge, it would be very helpful if we could apply given tutorials, on some kaggle competitions
@robmulla
@robmulla 2 роки тому
Thanks Aka. I'm still working up towards more advanced machine learning videos but hope to get to them in the future. Hopefully this video is still helpful for anyone brand new to image data working on an image kaggle competition.
@Glanmire3
@Glanmire3 Рік тому
Hi Rob, just a quick novice's question. What are the advantages/disadvantages using Matplotlib vs OpenCV? Or in other words, what situation which library is better? I'm happy to find your tutorial, you aren't speaking like you have to win a "fastest talking competition" and you really share the principal informations leaving us to look into further details if necessary. (I'm not an Egnlish native)
@robmulla
@robmulla Рік тому
Thanks for the feedback. The two libraries are very different and only really overlap in their ability to read and display images. OpenCV is a powerhouse for all things computer vision. Matplotlib can do plotting of data and some image processing.
@pythonicd1239
@pythonicd1239 Рік тому
Thanks for your videos! I recently started watching your videos, and kaggle keeps failing to save my draft and I lose my notes, what can I do about this?
@ronbzalen
@ronbzalen Рік тому
thanks, great video ! just a correction though - when you make the image smaller by x in each axis you actually make the whole image x^2 times smaller
@robmulla
@robmulla Рік тому
Oh, great point! Thanks for pointing that out.
@IAKhan-km4ph
@IAKhan-km4ph 4 місяці тому
Plz use geotiff images for GIS use as well in next lecture.
@fuadalhasan1784
@fuadalhasan1784 8 місяців тому
Is it work for svg format
@ibrahimenahoro4393
@ibrahimenahoro4393 Місяць тому
Kindly make a video on a cardiomyocyte Data Analysis using Python.
@mahaadnan85
@mahaadnan85 11 місяців тому
hi please i need help with a topic speaker identification in python. how convert dataset to array two dimension
@aoVanPhu
@aoVanPhu 10 місяців тому
Hello teacher. I have a question. Why the numpy array of PNG image have range 0~1, JPG have range from 0~255?
@LuffyMonkey0327
@LuffyMonkey0327 10 місяців тому
please do tutorial of this with tar file. am trying to open a custom dataset with tar file. having trouble opening
@jethjesuschild
@jethjesuschild 11 місяців тому
hello sir, can you make a video for image processing with opencv using python
@akindukalhan8755
@akindukalhan8755 Рік тому
Would be great if you could have explained how to flip an image with the usage of pixels
@robmulla
@robmulla Рік тому
Thanks for watching. It should be really easy to do manually using numpy.flip or you could flip using the built in cv2. Here is the numpy documentation you would just need to select the correct axis: numpy.org/doc/stable/reference/generated/numpy.flip.html
@diegofernandogiraldoportil6572
@diegofernandogiraldoportil6572 Рік тому
For a university project, I must read a car registration with Python, get its characters. I don't know if you are interested in doing something with this. A camera that reads the car registration, collects the characters and can use those characters to compare it in a database.
@robmulla
@robmulla Рік тому
Sounds like a cool project. I’ve been asked this type of question a lot so maybe I’ll try to make a video about it. Good luck!
@diegofernandogiraldoportil6572
@diegofernandogiraldoportil6572 Рік тому
@@robmulla thanks for answering. You are very good teaching I am from Colombia and the automatic translator works very well. I can read everything you say in the videos and really teach too well. Congratulations.
@Garuda_Vigyan
@Garuda_Vigyan Місяць тому
Dear data 👨‍🔬 Let me know about initial image data for face and accidental face data to find the difference in uaing open cv and matplotlib🎉please sir
@kerem54545454
@kerem54545454 5 місяців тому
Do one with detecting different colors within a pic
@ZubairKhan-bn8ow
@ZubairKhan-bn8ow Рік тому
Which interface are you using? Is it google colab pro
@robmulla
@robmulla Рік тому
This is a kaggle notebook. Check out my tutorial on jupyter notebooks and I explain my setup.
@mehdismaeili3743
@mehdismaeili3743 2 роки тому
hi thanks for this video,this video has 5 likes.😃
@robmulla
@robmulla 2 роки тому
Thank you too. Hope you liked it!
@GOKZAID
@GOKZAID Місяць тому
I'm from Pakistan your best video for welcome
@user-qc4go5jp2y
@user-qc4go5jp2y 3 місяці тому
How can I link this model with interface I need your help please reply to me In the fastest time
@pankajchand6761
@pankajchand6761 10 місяців тому
Why use OpenCV instead of Scikit-Image?
@rogertang9446
@rogertang9446 Рік тому
Wonderful tutorial! But upscaling width and height 10 times simultaneously doesn't make the image 10 times bigger, but 100 times bigger
@timeWaster76
@timeWaster76 4 місяці тому
13:22 Gray scale but also negative
@hanzozohan6009
@hanzozohan6009 Рік тому
what is that platform u using?
@robmulla
@robmulla 10 місяців тому
Linux.
@octavstanculescu1100
@octavstanculescu1100 Рік тому
I think the chanel images are inversed like a negative
@robmulla
@robmulla Рік тому
Oh yea? Do you mean with RGB?
@octavstanculescu1100
@octavstanculescu1100 Рік тому
I mean like the negative on a film photography
@andrejtursky1551
@andrejtursky1551 Рік тому
sneaky suplots to subplots @6:49
@robmulla
@robmulla Рік тому
Nice catch! Must have fixed it and edited that part out 😅
@andrejtursky1551
@andrejtursky1551 Рік тому
@@robmullayeah xd, but anyway thank you for your videos and Happy new year from the future! pd.Timestamp.now(tz='Etc/UTC+1')
@ChezChicago
@ChezChicago Рік тому
It looks like you are working in Linux. I have job interview. The source data come from TV. Can you teach me?
@robmulla
@robmulla Рік тому
Yes I use Linux. My Chanel is my teaching. Hope you find it helpful.
@Cal97g
@Cal97g Рік тому
How do masks work?
@robmulla
@robmulla Рік тому
Depends what type of mask we are talking about...
@jessidleonvelezgutierrez3645
@jessidleonvelezgutierrez3645 Рік тому
python is for fast prototyping, not for long lasting code.... new releases of whatever in python kills previous code.... what a shame!!!!
@hanss1754
@hanss1754 3 місяці тому
Gotta love heavy abstractions
A Gentle Introduction to Pandas Data Analysis (on Kaggle)
38:45
Rob Mulla
Переглядів 120 тис.
Video Data Processing with Python and OpenCV
32:05
Rob Mulla
Переглядів 61 тис.
Кровосток - разговор с легендами / вДудь
2:12:57
Пескоструйный АППАРАТ! #shorts
01:00
Гараж 54
Переглядів 2,5 млн
Image Manipulation in Python [ A complete guide to Pillow ]
2:17:18
Clear Code
Переглядів 63 тис.
OpenCV Python Tutorial #1 - Introduction & Images
14:52
Tech With Tim
Переглядів 320 тис.
Big Tech AI Is A Lie
16:56
Tina Huang
Переглядів 51 тис.
This INCREDIBLE trick will speed up your data processes.
12:54
Rob Mulla
Переглядів 251 тис.
Train Neural Network by loading your images |TensorFlow, CNN, Keras tutorial
18:29
When Maths Meet Coding
Переглядів 293 тис.
How to make advanced image recognition bots using python
15:01
Kian Brose
Переглядів 1,3 млн
How to Preprocess Images for Text OCR in Python (OCR in Python Tutorials 02.02)
53:24
Python Tutorials for Digital Humanities
Переглядів 137 тис.