Contents table

Now updating...

Computer Vision

* Image Processing
 - Digital Image
 - Histogram
   .Similar color matching in 20 represented colors table
   .Histogram back projection
   .EMD(earth mover distance) and reference
   .Calculate 1 channel histogram and draw
   .Calculate 2 channel histogram and 2 histogram compare
   .create 1D histogram and draw
 - Binary image
 - Basic image processing
  . pixel
   .Catmul-Rom spline interpolation C++ code   
  . geometry
 - Multi resolution
  . up/down sampling
  . image pyramid
 - Morphology
   .morphology example
   .morphology application
- Basic Edge
   .3 channel image blur using GPU
- Canny Edge
   .Canny Edge detection in video(opencv)
   .Canny Edge detection in imgae(opencv)
   .Caany Edge c++ source code
   .explanation of cvCanny function parameter
- Color Edge
- Line detection
   .Hough trasnform (line, cirlce) c++ code

* Local Feature detection
 - Basic feature
 - Rotation, scale invariant feature
   .FREAK feature extraction using opencv
* Image segment

 - mean shift
   .MeanShift color segmentation(cpu, gpu version)
 - Graph
 - watershed
 - K-means
   .Incremental K-means(matlab code)
   .K-means in opencv, c++ and python code

* Feature description
 - Histogram Of Gaussian(HOG)
   .Two HOG features similarity compare
   .HOG computation and visualization
   .HOG feature extraction and save to xml file
 - Keypoint descriptor
   .Surf feature extraction and matching gpu version
   .Surf feature extraction gpu version
   .Extract Surf (for stitching)
 - Area descriptor
 - Texture
 - PCA(Principal Component Analysis)

* Matching

 - kd tree
 - Ransac
 - BruteForceMatche
   .Surf feature extraction and matching gpu version
   .Orb feature extraction and matching gpu version
 - Best Of 2 nearest matcher
   .leave biggest component function in images (gpu version) 
   .leave biggest component function in images (cpu version)
 - Shape compare
   .contour compare
 - Feature matching
   .matchesGraphAsString example
   .Finding largest subset images only adjacent images (surfFeaturesFinder, BestOf2NearestMatcher, leaveBiggestComponent)
   .

* Machine Learning

 - Neural network
 - SVM
   .SVM learning by hog feature and method to use HOG.SetSVMDetector
   .SVM learning data test
   .SVM learning by HOG feature
   .Latent SVM (cat detection)
 - AdaBoost
   .Face detection in opencv(cpu and gpu version) (korean)
   .Face detection in opencv(cpu and gpu version)
   .Multi-view face detection
   .AdaBoost learning example in matlab
 - HMM
   .HMM forward algorithm c code
 - Deep learning
   .MNIST image data

* Recognition
 - convolution
 - bag of word

* Motion

 - Background subtraction
   .MOG2 background subtraction and blob rect draw
   .MOG2 gpu version
   .MOG, MOG2, GMG background subtraction compare and example source
   .MOG2 blob labeling and FREAK feature extraction
 - Optical flow
   .Farneback Optical flow : camera moving check
   .Farneback dense optical flow(gpu version)
   .Farneback dense optical flow(cpu version)
   .Optical flow gpu version
   .Optical flow orb version

 - Object tracking
   .MIL, Boosting tracker test in opencv 3.0
   .Kalman filter theory note


* 3D Vision & geometry

 - Stereo
   .Camera calibration using OpenCV and drawing using matlab
   .Pattern image(PDF)
   .Camera calibration using OpenCV(old 1.0 ver)
 - Death
 - Geometry
   .8 point algorithm
   .setero feature tracking for visual odometry
   .Direct linear transformation(DLT) (matlab)
   .DLT test in real image (matlab)
 - Stitching / Panorama
   .Two image mosaic based on SIFT
   .2 view real-time stitching
   .Stitching example using OpenCV (Stitcher class)
 - Warp / Distortion
   .Perspective Warp / Find Homography
   .Find homography and warping

* Scene understanding

* Logic & Algorithm
   .A* path planning algorithm
   .SUDOKU random number generator
   .Basic logic, count sequence number
   .Fibonacci sequence and recursive call
   .Fibonacci sequence function
  .f(N) counts number of '1'. For example f(13) = 6. So f(1)=1. What next number do satisfy the rule?
   .Any 4 points odering by leftTop, RightTop, RightBottom, LeftBottom


OpenCV Basic

* install
   .Install TBB+CUDA in OpenCV
   .Install CUDA + OpenCV
   .Visual Studio 2012 + OpenCV 2.46 setting
   .OpenCV 3.0 rc1 + CUDA 6.5 + QT 5.4 + TBB setting
   .Make dynamic lib include opencv
   .QT + OpenCV path setting
   .imread, videocapture example in opencv 3.0

* mat
   .Mat point access
   .Mat Operation sum(sqrt(A.-B))
   .Mat merging
   .Copy image buffer to Mat
   .2D vector to Mat, Mat to 2D and xml read/write
   .xml write/read example code
   .float array to Mat
   .Mat resize
   .Get width, height size from Mat
   .Mat to IplImage*
   .vector to Mat, Mat to vector
   .Mat data access and copy to another mat using memcpy

* CUDA
   .OpenCV CUDA example
   .CUDA first setting, cuda toolkit 6.0 + VS 2012
   .julia set and error debug (calling a __host__ function("cuComplex::cuComplex") from a __device__ function("julia") is not allowed)
   .vector sum processing speed compare cpu vs gpu
   .Meaning of threadIdx, blockIdx, blockDim, gridDim in the cuda (1D)
   .Meaning of threadIdx, blockIdx, blockDim, gridDim in the cuda (2D)
   .To process all arrays by reasonably small number of threads in cuda ( the explaination of tid = blockDim.x * gridDim.x )

* Video
   .2 cams view example
   .video capture example
   .video write example
   .avi file load and display example
   .Make 2 frame having time interval example
   .web cam capture example
   .To save mouse drag region to image file on the video frame. example source using opencv
   .A region of interest image capture from video
   .SetMouseCallback function example, get rectangle coordinate of mouse drag on the video image

* other
   .Video frame to jpg (imwrite)
   .-1.#IND check by cvIsNaN
   .Proceesing time measurement(GetTickCount)
   .Mouse event capture in video
   .PutText, write text on the image
   .IplImage display on picturebox on dialog(mfc)
   .explanation of MatchesInfo structure 
   .How to make RotatedRect class
   .What is the InputArray?
   .no free SurfFeatureDetector
   .RotatedRect draw example
   .Caution when you use cvSetImageROI
   .Tip, error message 0xc000007b
   .Tip, tbb.dll error


Computer Language

* C++ / C / MFC / TBB 
   .Argument parser
   .To get a list of files in the directory using CFileFind function
   .To make folder selection browser and get path
   .To make folder and file selection browser and get path
   .Get current path
   .The meaning of LPSTR, LPCSTR, LPTSTR, LPCTSTR, LPWSTR
   .char to int, int to char
   .char to float
   .char* compare
   .TBB example source code
   .CString to char*
   .File write and read by binary in C
   .Making thread on MFC
   .Be careful when you use "unsigned long long type"
   .Create folder 
   .To prevent list box overflow and focus on newest list
   .'afxcontrolbars.h' - No such file or directory error
   .Check radio button in MFC control
   .The method to convert 4 bytes array to float
   .Processing time measurement(getTickCount)
   .xml read/write using TinyXML
   .command argument setting in Visual Studio
   .

* STL
   .string split
   .string hex to decimal
   .vector sort (lambda version)
   .No duplication random using random_shuffle function

* Python
   .Make C module using distutils
   .Make C module in visual studio
   .dateutil install process
   .Python embedding
   .Exception processing
   .Mail read example, imaplib
   .Mail send example, smtplib
   .byte to string, string to byte
   .K-means example using opencv
   .opencv mat and numpy example
   .put_nowait(), get_nowait() example
   .queue, stack, priority queue example
   .queue example
   .multiprocessing example
   .threading example
   .sys modules
   .pycharm tool color setting
   .pycharm first setting
   .OS modules
   .SQLite3 example
   .Get list item, __getitem__
   .math modules example
   .

* Matlab
   .Save data to txt file
   .reshape : matrix dimension change
   .Plot option(color, line type, etc..)
   .num2str, strcat
   .Euler angle, rotation matrix, quanternion

* OpenGL
   .Make 2 view and rendering on dialog in MFC
   .Rendering on dialog in MFC
   .To get color information of specific pixel coordinate on the OpenGL space.
   .To save OpenGL ViewPort to image file (glReadPixels, OpenGL -> OpenCV)
   .To make subwindow, multi window, using glutCreateSubWindow
   .OpenGL setting in Window + Visual Studio
   .OpenGL Testing about Lighting position, Ambient, Diffuse, Specular, Shineness, and display on MFC dialog
   .Shape from shading 
   .link2019 errors

* Arduino
   .The method to make library
   .LED on/off using piezo speaker
   .Temperature sensing
   .LED control using potentiometer
   .LED on/off duration changed by value of brightness is checked by potentiometer
   .LED brightness change by PWM
   .Make sound using piezo speaker
   .LED on/off by serial communication
   .Serial communication and led on/off on the board
   .LED brightness control by switch connection
   .LED brightness changing using analog pin-port
   .LED on/off using switch
   .solution of avrdude stk500_recv() error
   .5 led on/off example
   .Camera pan/tilt using servo motor and control by arduino

* iOS
   .where File's Owner icon to set to connect outlet to actions
   .How to access iOS provisioning portal site
   .(MAC tip)How to make new txt file in Finder


Etc

* Equipment
   .IMU(3DM-GX3) Data Acquisition : 1 sensor, 2 sensor
   .Bumblebee camera housing & bracket
   .SICK LMS511 sensor data acquisition
   .'Logitech extreme 3D pro' joystick data acquisition code
   .881A sonar sensor data acquisition code
   .LG notebook z360
   .Macbook air haswell 13''
   .LG z360 vs MacBook air
   .Lifetrons, brumbassIII Bluetooth
   .Convert from FlyCapture(Point grey) to OpenCV (Source code)
   .Acquisitions to opencv from myVisionUSB and video display 
   .BumBleBee 2D, 3D data acquisition source code
   .

* Data
   .Car number plate images
   .Car side view images
   .Full half face images
   .Frontal face images
   .Half face images
   .Frontal face images

* Tips
   .Disable port 80 on the window 2008 os (in APM setup)
   .The method do not shut the console window in visual studio
   .Linear algebra library armadillo
   .Visual studio project Re-namer tool
   .CUDA Link2005 Error
   .nvcc : fatal error : could not set up the environment for microsoft visual studio using... #1
   .nvcc : fatal error : could not set up the environment for microsoft visual studio using... #2
   .Google urls of each countries

* Math
   .derivative of tan(x)
   .derivative of sqrtroot(1-x^2) (chain rule)
   .derivative of inverse sin(x)
   .proof of (1/f)'(x) = -f'(x)/f(x)^2
   .proof of d(e^x)/dx=e^x
   .proof of limit x->0 sin(x)/x = 1
   .0≦t< 1 -> t∈[0,1)
   .linear algebra library -> armadillo
   .atan2 function
   .Mahalanobis distance, source code
   .covariance calculation source code
   .covariance matrix example
   .clapack example source and method to use
   .inner product calculation source code
   .MathType 6.7 download
   .Distance Tx, Ty according to heading direction
   .Maple 15 tip - matrix multiply
   .Maple 15 tip - matrix differential
   .partial differential chain rule
   .Basic concept of caculus

 


Applications / Solutions(project)

* Vision / Image processing
   .To Determine whether the facial is camouflage or not
   .Fast face detection using AdaBoost + Camshift
   .Real-time yard trailer identification by detection of vehicle ID numbers
   .Simple Image Processing using opencv, MFC
   .Real-time multi view video stitching
   .

* Tools
   .Easy points(coordinate) save to txt file by click on image



No comments:

Post a Comment