---
title: Python-OpenCV hw1練習(github)
tags: OpenCV, Python
---
## Description
This is a practice project that using Python with OpenCV.
## Requirements
* Python==3.7.0
* opencv-contrib-python==3.4.2.17
* matplotlib==3.1.1
* numpy==1.18.5
* PyQt5==5.15.1
* pyqt5-tools==5.15.1
---
## Show the results
### 1. Image Processing
#### 1) Load Image File

#### 2) Color Separation
Extract 3 channels of the image BGR to 3 separated channels.




#### 3) Image Flipping
Flip the image


#### 4) Blending
Combine two images and ese Trackbar to change the weights and show the result.



### 2. Image Smoothing
Original image:

#### 1) Median filter
Apply 7x7 median filter.

#### 2) Gaussian blur
Apply 3x3 Gaussian blur.

#### 3) Bilateral filter
Apply 9x9 Bilateral filter with 90 sigmaColor and 90 sigmaSpace.

### 3. Edge Detection
Original image:

#### 1) Gaussian Blur(without OpenCV)

#### 2) Sobel X

#### 3) Sobel Y

#### 4) Magnitude
Use the results of Sobel X and Sobel Y to calculate the magnitude.

### 4. Transforms
With Rotation, Scaling, Translation with (x, y) as following parameters:

Original image:

After transform:
