Monday, November 25, 2019

FC-CRF

FC-CRF

2019/11/18

前言:

傳統的圖像分割和標記技術是在像素或者圖片區域上定義 CRF。雖然區域模型上通常有密集的成對連通性,但是像素級別的模型一般只允許用在稀疏圖結構,CRF 圖模型的邊非常多, 不能使用傳統方法,但用近似算法推斷全連接的 FC-CRF 模型,其中成對邊緣的勢能由高斯核的線性組合定義。

-----



# FC-CRF

-----

References

# FC-CRF
Krähenbühl, Philipp, and Vladlen Koltun. "Efficient inference in fully connected crfs with gaussian edge potentials." Advances in neural information processing systems. 2011.
http://papers.nips.cc/paper/4296-efficient-inference-in-fully-connected-crfs-with-gaussian-edge-potentials.pdf

语义分割中 CRF 的运用 _ Mooyu's Blog
http://guoxs.github.io/Blog/2018/03/10/CRF/

FCN(3)——DenseCRF - 知乎
https://zhuanlan.zhihu.com/p/2246458

DRN

DRN

2019/11/18

與 ENet 同樣使用 ResNet 與擴張卷積的 DRN,改善擴張卷積的缺點,論文作者稱為 degridding。三個方法分別是:移除 max pooling、增加殘差層數、移除 7、8 兩層的恆等映射。

-----


# DRN

-----


# DRN

-----


# DRN

-----


# DRN

-----


# DRN

-----


# DRN

-----

References

# DRN
Yu, Fisher, Vladlen Koltun, and Thomas Funkhouser. "Dilated residual networks." Proceedings of the IEEE conference on computer vision and pattern recognition. 2017.
http://openaccess.thecvf.com/content_cvpr_2017/papers/Yu_Dilated_Residual_Networks_CVPR_2017_paper.pdf

空洞卷积(Dilated Convolution):有之以为利,无之以为用 - 知乎
https://zhuanlan.zhihu.com/p/66796313

ENet

ENet

2019/11/18

前言:

以 SegNet 為基線,ENet 在 ResNet 的架構上整合了傳統卷積、Inception v3 的非對稱卷積、與 DilatedNet 的擴張卷積,在速度上取得極佳的表現,但在準確率上則不佳。可說是 Semantic Segmentation 上的 YOLO。

-----


# ENet

-----


# ENet

-----


# DilatedNet

-----


// AlphaTree-graphic-deep-neural-network_InceptionV3.md at master · weslynn_AlphaTree-graphic-deep-neural-network · GitHub

-----

# ENet

-----

References

# ENet
Paszke, Adam, et al. "Enet: A deep neural network architecture for real-time semantic segmentation." arXiv preprint arXiv:1606.02147 (2016).
https://arxiv.org/pdf/1606.02147.pdf

# DilatedNet

Yu, Fisher, and Vladlen Koltun. "Multi-scale context aggregation by dilated convolutions." arXiv preprint arXiv:1511.07122 (2015).
https://arxiv.org/pdf/1511.07122.pdf 

-----

AlphaTree-graphic-deep-neural-network_InceptionV3.md at master · weslynn_AlphaTree-graphic-deep-neural-network · GitHub
https://github.com/weslynn/AlphaTree-graphic-deep-neural-network/blob/master/object%20classification%20%E7%89%A9%E4%BD%93%E5%88%86%E7%B1%BB/InceptionV3.md

-----

ENet —一种针对实时语义分割的深度神经架构 - 知乎
https://zhuanlan.zhihu.com/p/57720412

DilatedNet

DilatedNet

2019/11/18

前言:

與傳統卷積相比,擴張卷積的計算量相同,然而可以取得較大的視野。

-----


# DilatedNet

-----

References

# DilatedNet
Yu, Fisher, and Vladlen Koltun. "Multi-scale context aggregation by dilated convolutions." arXiv preprint arXiv:1511.07122 (2015).
https://arxiv.org/pdf/1511.07122.pdf 

DilatedNet - 扩张卷积(语义分割) - 知乎
https://zhuanlan.zhihu.com/p/61304801

SegNet

SegNet

2019/11/18

前言:

SegNet 的編碼器使用 VGG16。與 DeconvNet 相比,SegNet 進行更多性能、記憶體、速度上的平衡。首先 SegNet 去掉了 FC 層,所以參數量降低為 1/10,另外在 Upsampling 的時候,使用 Conv 層而非 Deconv 層。

-----


# SegNet

-----


# SegNet

-----

References

# SegNet
Badrinarayanan, Vijay, Alex Kendall, and Roberto Cipolla. "Segnet: A deep convolutional encoder-decoder architecture for image segmentation." IEEE transactions on pattern analysis and machine intelligence 39.12 (2017): 2481-2495.
https://arxiv.org/pdf/1511.00561.pdf

SegNet论文笔记 - 知乎
https://zhuanlan.zhihu.com/p/36525939

DeconvNet

DeconvNet

2019/11/18

前言:

DeconvNet 是對稱的結構,由於並未取消全連接層,所以參數量還是很大。解碼器部分主要由 unpooling 和 deconvolution 構成,unpooling 通過記錄解碼器對應的 max pooling 的 indice 取得原始結構,其結果是稀疏的,使用 deconvolution 可進行學習。

-----


# DeconvNet

-----


# DeconvNet

-----


# DeconvNet

-----

References

# DeconvNet
Noh, Hyeonwoo, Seunghoon Hong, and Bohyung Han. "Learning deconvolution network for semantic segmentation." Proceedings of the IEEE international conference on computer vision. 2015.
https://www.cv-foundation.org/openaccess/content_iccv_2015/papers/Noh_Learning_Deconvolution_Network_ICCV_2015_paper.pdf

DeconvNet & SegNet
https://jimchenhub.github.io/posts/2019-04-16-DeconvNet%20&%20SegNet

FCN

FCN

2019/11/18

前言:

FCN 是語意分割(Semantic Segmentation)的經典論文。舉例說明,照片上,屬於狗的像素,都會被塗上同一顏色,貓的像素則被塗上另一顏色,其餘類推。傳統上有條件隨機場(CRF) 等方法,FCN 則把卷積神經網路最後的全連接層也換成卷積層,最後的特徵圖因而保留概略的輪廓,然後上取樣兩次,達到不錯的效果。值得注意的是,使用 VGG16 比 GoogLeNet 的效果好不少。

-----


# FCN

-----


# FCN

-----


# FCN

-----


# FCN

-----


# FCN

-----


# FCN

-----


# FCN

-----


# FCN

-----


# FCN

-----



// Fully Convolutional Networks _ 简说

-----

References

# FCN
Long, Jonathan, Evan Shelhamer, and Trevor Darrell. "Fully convolutional networks for semantic segmentation." Proceedings of the IEEE conference on computer vision and pattern recognition. 2015.
https://www.cv-foundation.org/openaccess/content_cvpr_2015/papers/Long_Fully_Convolutional_Networks_2015_CVPR_paper.pdf

FCN学习:Semantic Segmentation - 知乎
https://zhuanlan.zhihu.com/p/22976342

Fully Convolutional Networks _ 简说
http://simtalk.cn/2016/11/01/Fully-Convolutional-Networks/

Monday, November 18, 2019

nms()

nms()

2019/10/07







nms(): perform non-maximal suppression on the results above along with appropriate threshold for corner detection


-----

References

structure_tensor()

structure_tensor()

2019/10/07







structure_tensor(): use the gradient magnitude above to compute the structure tensor (second-moment matrix).

References

Structure tensor - Wikipedia
https://en.wikipedia.org/wiki/Structure_tensor 

Structure Tensor - Tutorial and Demonstration of the uses of structure tensors in gradient representation
https://www.cs.cmu.edu/~sarsen/structureTensorTutorial/ 

图像 结构张量(structure tensor) - OO - CSDN博客
https://blog.csdn.net/Alphabetic/article/details/80329480

sobel_edge_detection()

sobel_edge_detection()

2019/10/07

sobel_edge_detection(): apply the Sobel filters to the blurred images and compute

-----


// How Image Edge Detection Works - Aryaman Sharda - Medium

-----


// Edge detection with the Sobel operator in Ruby – saush

-----




// First-order Derivative kernels for Edge Detection _ TheAILearner

-----


// Sobel edge detector with scikit-image - Hands-On Image Processing with Python [Book]

-----



// Edge detection by Sobel operator - Rajeev Ranjan - Medium

-----







Step edge
Ramp edge
Ridge edge
Roof edge

// OpenCV – more on edge detection – CH.Tseng

-----

Laplacian
Sobel
Canny
Prewitt
Scharr


-----





-----

References

◎ Paper

Sobel, Irwin, and G. Feldman. "An Isotropic 3x3 Image Gradient Operator for Image Processing." Mach. Vis. Three–Dimens. Scenes June (1968): 376-379.
https://www.researchgate.net/publication/239398674_An_Isotropic_3x3_Image_Gradient_Operator/link/557e06f508aeea18b777c389/download

-----

Sobel operator - Wikipedia
https://en.wikipedia.org/wiki/Sobel_operator 

# 綜述
# 107 claps
What is Edge Detection Convolutional Neural Network’s (CNN’s) edge detection
https://medium.com/@ayeshmanthaperera/edge-detection-7e09bb3531d9

# 97 claps
Understanding Edge Detection (Sobel Operator) - Data Driven Investor - Medium
https://medium.com/datadriveninvestor/understanding-edge-detection-sobel-operator-2aada303b900 

How Image Edge Detection Works - Aryaman Sharda - Medium
https://medium.com/@aryamansharda/how-image-edge-detection-works-b759baac01e2 

# 52 claps
Canny Edge Detection Method - Aydin Ayanzadeh - Medium
https://medium.com/@a.ayanzadeh/canny-edge-detection-method-23a23b282ac0 

# 299 claps
Canny Edge Detection Step by Step in Python — Computer Vision
https://towardsdatascience.com/canny-edge-detection-step-by-step-in-python-computer-vision-b49c3a2d8123

Edge detection with the Sobel operator in Ruby – saush
https://blog.saush.com/2011/04/20/edge-detection-with-the-sobel-operator-in-ruby/ 

Sobel edge detector with scikit-image - Hands-On Image Processing with Python [Book]
https://www.oreilly.com/library/view/hands-on-image-processing/9781789343731/0d1fdc9a-8833-43d2-9e28-f89185793e7f.xhtml

// First-order Derivative kernels for Edge Detection _ TheAILearner
https://theailearner.com/2019/05/24/first-order-derivative-kernels-for-edge-detection/

-----

討論索伯算子 Sobel 的 Convolution 問題 - Rifur Ni - Medium
https://medium.com/@Rifur/%E8%A8%8E%E8%AB%96%E7%B4%A2%E4%BC%AF%E7%AE%97%E5%AD%90-sobel-%E7%9A%84-convolution-%E5%95%8F%E9%A1%8C-e986ce026e72 

OPENCV – Edge detection邊緣偵測 – CH.Tseng
https://chtseng.wordpress.com/2016/12/05/opencv-edge-detection%E9%82%8A%E7%B7%A3%E5%81%B5%E6%B8%AC/

OpenCV – more on edge detection – CH.Tseng
https://chtseng.wordpress.com/2016/12/05/opencv-more-on-edge-detection/

邊界偵測 (Edge Detection) – Ya-Ti's Blog
https://blog.ya-ti.nctu.me/2018/07/edge-detection/?i=1 

Edge Detection Algorithm using OpenCV.md · GitHub
https://gist.github.com/MarcWang/52bd9e0dea9e168a010c7e83d7f2b3b0 

You are entering my brain......  Edge Detection--Sobel Filter
http://tkdstkdstkds.blogspot.com/2012/02/edge-detection-sobel-filter.html  

Homework Show @ IPC  HW7 - 邊緣偵測 (Sobel operator)。
http://hwshow-ipc.blogspot.com/2010/01/hw7-sobel-operator.html 

CS362_1001545  [HW3] Sobel Edge Detection
http://yzu1022cs362s1001545.blogspot.com/2014/03/hw3-sobel-edge-detection.html 

Edge detection by Sobel operator - Rajeev Ranjan - Medium
https://medium.com/@rajeevranjan_47004/edge-detection-by-sobel-operator-ba9c90b001c0

-----

代碼實作

# 312 claps
Comparing Edge Detection Methods - Nika Tsankashvili - Medium
https://medium.com/@nikatsanka/comparing-edge-detection-methods-638a2919476e

Sobel edge detector _ Martin
https://cmmlin2016.wordpress.com/2013/11/18/sobel-edge-detector/

gaussian_smooth()

gaussian_smooth()

2019/10/07

-----

gaussian_smooth(): filter images with Gaussian blur.

-----

Gaussian blur is a filter used to smooth or blur a digital picture. It replaces pixels with a weighted average of surrounding pixels. The weights come from the Gaussian probability distribution, so the nearest pixels are more influential.

-----


// Gaussian blur - Wikipedia

-----

高斯模糊是用於平滑或模糊數位照片的濾波器。它將像素替換為周圍像素的加權平均值。權重來自高斯機率分佈,所以越近的像素影響力越大。

-----


// Normal distribution - Wikipedia

-----


// 透過 SIMD 加速高斯模糊運算 - HackMD

-----



// The Never Ending Fascination Of The Gaussian Distribution

-----


// 高斯模糊的算法 - 阮一峰的网络日志

-----



// 高斯模糊的算法 - 阮一峰的网络日志

-----


// 透過 SIMD 加速高斯模糊運算 - HackMD

-----



// Gaussian Blurring with Python and OpenCV - Analytics Vidhya - Medium

-----




// image processing - Gaussian Blur - Standard Deviation, Radius and Kernel Size - Signal Processing Stack Exchange

-----




// 高斯平滑 高斯模糊 高斯滤波器 ( Gaussian Smoothing, Gaussian Blur, Gaussian Filter ) C++ 实现 - 斯巴达的勇士已经是雅典的臣民了。。。 - CSDN博客

-----

 // 高斯平滑 高斯模糊 高斯滤波器 ( Gaussian Smoothing, Gaussian Blur, Gaussian Filter ) C++ 实现 - 斯巴达的勇士已经是雅典的臣民了。。。 - CSDN博客


-----




// image processing - How is Gaussian Blur Implemented  - Computer Graphics Stack Exchange

-----








-----

References

What is a Gaussian blur  - Quora
https://www.quora.com/What-is-a-Gaussian-blur

Gaussian blur - Wikipedia
https://en.wikipedia.org/wiki/Gaussian_blur 

Normal distribution - Wikipedia
https://en.wikipedia.org/wiki/Normal_distribution

The Never Ending Fascination Of The Gaussian Distribution
https://analyticsindiamag.com/the-never-ending-fascination-of-the-gaussian-distribution/

image processing - Gaussian Blur - Standard Deviation, Radius and Kernel Size - Signal Processing Stack Exchange
https://dsp.stackexchange.com/questions/10057/gaussian-blur-standard-deviation-radius-and-kernel-size

image processing - How is Gaussian Blur Implemented  - Computer Graphics Stack Exchange
https://computergraphics.stackexchange.com/questions/39/how-is-gaussian-blur-implemented

Gaussian Blurring with Python and OpenCV - Analytics Vidhya - Medium
https://medium.com/analytics-vidhya/gaussian-blurring-with-python-and-opencv-ba8429eb879b

Computer Vision Feature Extraction 101 on Medical Images — Part 3  Difference of Gaussian, and Laplacian of Gaussian
https://towardsdatascience.com/computer-vision-feature-extraction-101-on-medical-images-part-3-difference-of-gaussian-and-b3cbe5c37415

opencv - Difference between Mean and Gaussian Filter in Result - Stack Overflow
https://stackoverflow.com/questions/31131672/difference-between-mean-and-gaussian-filter-in-result

Smoothing Images — OpenCV 2.4.13.7 documentation
https://docs.opencv.org/2.4/doc/tutorials/imgproc/gausian_median_blur_bilateral_filter/gausian_median_blur_bilateral_filter.html

Fastest Gaussian Blur (in linear time)
http://blog.ivank.net/fastest-gaussian-blur.html

-----

高斯模糊的算法 - 阮一峰的网络日志
http://www.ruanyifeng.com/blog/2012/11/gaussian_blur.html

高斯平滑 高斯模糊 高斯滤波器 ( Gaussian Smoothing, Gaussian Blur, Gaussian Filter ) C++ 实现 - 斯巴达的勇士已经是雅典的臣民了。。。 - CSDN博客
https://blog.csdn.net/hhygcy/article/details/4329056

高斯平滑 高斯模糊 高斯濾波器 ( Gaussian Smoothing, Gaussian Blur, Gaussian Filter ) C++ 實現 - I am Rocky - CSDN博客
https://blog.csdn.net/rocky_shared_image/article/details/7238796



-----


高斯模糊 - 維基百科,自由的百科全書
https://zh.wikipedia.org/wiki/%E9%AB%98%E6%96%AF%E6%A8%A1%E7%B3%8A 

單元五、空間濾波
http://ccy.dd.ncu.edu.tw/~chen/course/vision/ch5/ch5.htm

[Python]Gaussian Filter-概念與實作 - 天道酬勤 - Medium
https://medium.com/@bob800530/python-gaussian-filter-%E6%A6%82%E5%BF%B5%E8%88%87%E5%AF%A6%E4%BD%9C-676aac52ea17

Python 與 OpenCV – 模糊處理 – CH.Tseng
https://chtseng.wordpress.com/2016/11/17/python-%E8%88%87-opencv-%E6%A8%A1%E7%B3%8A%E8%99%95%E7%90%86/

【影像處理】雜訊與濾波 Noise and Filter - Jason Chen's Blog
https://jason-chen-1992.weebly.com/home/-noise-and-filter

透過 SIMD 加速高斯模糊運算 - HackMD
https://hackmd.io/@jserv/BJOTYoHge?type=view



Premiere Pro視訊特效(Video Effect) 中英文對照參考表 @ MADer 資料庫   痞客邦
https://mader.pixnet.net/blog/post/6079591