August 2017


My favourite

  • Opencv tutorial people detection
  • Head people cascade download
  • Opencv tutorial optical flow
  • Opencv Video stabilization
  • Opencv car dataset download
  • Opencv tutorial Transparent mask
  • Opencv videowriter
  • Opencv FFMPEG
  • Opencv Canny edge and hough lines
  • As a big fan of OPENCV 3.3.0 There is what is new!

    Some my notes about new released. Based on changelog and released notes. 

    Deep neural network module is now accelerated with improved performance also moved into the main repository branch under opencv/modules/dnnThis module is also no more available in contrib branch. There was improved loading models from Troch and TensorFlow and many performance improvements. 

    Support of
    • Caffe 1
    • TensorFlow
    • Torch/PyTorch
    Interesting is available layer types list 
    • AbsVal
    • AveragePooling
    • BatchNormalization
    • Concatenation
    • Convolution (including dilated convolution)
    • Crop
    • Deconvolution, a.k.a. transposed convolution or full convolution
    • DetectionOutput (SSD-specific layer)
    • Dropout
    • Eltwise (+, *, max)
    • Flatten
    • FullyConnected
    • LRN
    • LSTM
    • MaxPooling
    • MaxUnpooling
    • MVN
    • NormalizeBBox (SSD-specific layer)
    • Padding
    • Permute
    • Power
    • PReLU (including ChannelPReLU with channel-specific slopes)
    • PriorBox (SSD-specific layer)
    • ReLU
    • RNN
    • Scale
    • Shift
    • Sigmoid
    • Slice
    • Softmax
    • Split
    • TanH

    And even more

    Advanced core performance AVX, AVX2, SSE and NEON
    New Python and C++ samples DNN C++ and Python api

    Another mainly performance improvements is 15% speed according to IPPICV from 2015.12 to 2017.2 version upgrade

    Opencv C++ 11 ready 

    I am interesting about news C++ 11 support. This should speed up development a bit. Tested on fedora distribution and Opencv should be build with -DENABLE_CXX11=ON. I will try on windows. I do not expect any problem. Build Opencv 3.3 with Visual Studio 2017 and CXX11 support.
    Examples like

    And dummy auto containers :)
    auto A = Mat_<double>({0, -1, 0, -1, 5, -1, 0, -1, 0}).reshape(1, 3);

    Opencv hardware-accelerated video encoding/decoding

    This is big in my eyes. Continue doing this.. Encoding and decoding of raw H.264 and MPEG1/2 video streams is supported, media containers are not supported yet.

    Big thanks to all contributors of OPENCV 3.3.0 to doing this great lib even better. 



    Machine learning by Andrew Ng

    machine learning

    I would like to summarize couple of thoughts about this famous coursera course. I just guess what you want to know. There is couple of facts important for me.

    Facts about

    • Link to course here
    • Price 75 dollars, not sure 
    • 11 weeks, 25 assignment from that 8 programming exercises in Matlab Octave.
    • You need to pass all assignment to get Certificate
    • Not a problem to finish in 5 weeks.
    • Video lectures, PDF, discussion, Matlab Octave background materials, data sets, and much more, teachers to help you any time
    • As a student, you focus on critical elements to really understand the machine learning. Not how to use and build model in TensorFlow like in some other course.. 
    • In Matlab, Octave you design and programming critical parts to be able understand how  machine learning works. Not python call of some black box. Real Math behind..
    Again and again constructing different Cost function for different type of problems to be able to evaluate how good your model is. 
    Gradient descent in different application and debugging if you are on right track. Advance method of optimization and different types of learning batch, stochastic gradient descent and many other for large scale machine learning.  

    • Some course about deep learning focus for example to using tensorflow and design model in tensorFlow. Not to essentials of ML implementations and    
    What is included

    • Linear regression to predict or maybe better to understand evaluation of some metrics based on some observation. 
    • Logistic regression to be able assigned something to class or not 0, 1
    • Neural networks, Cost function, Learning by back propagation and handling of over fitting.
    • SVM one of the best machine learning result of all time. 
    • K mean to be able observe several cluster center in unsupervised learning  
    • Evaluation, error according to recognize the problem before your learning ends nowhere. This practical part to recognize over fitting and high bias is everywhere.  It is right. The concept is quite known. The experience in ML is hard to learn almost harder than the theory itself. 
    • Unsupervised learning, K mean and PCA 
    • Quite lots of application example, Building and design of recommendation system and anomaly detection

    Basically like any others ML bachelor course in little bit extended focus in neural networks application and implementation details. Which is plus and very good starting point. 

    What is missing ? There is no topics like. This topics you should study after you fully understand the previous topics quite well, anyway.

    • Recurrent Neural networks 
    • Deep learning 
    • Convolution neural network 
    Thanks for this course.. I got my certificate on Linkedin. My knowledge are far behind but still this is great extension and recapitulation of already known thinks towards better understanding.. 

    Go and take it..