Showing posts with label My Research. Show all posts
Showing posts with label My Research. Show all posts
Oct 21, 2017
Feb 8, 2016
Indoor scene dataset collection
- Berkeley B3DO
- 849 images.
- 50 categories.
- Bounding box level annotation.
- SUN 3D
- polygonal 2D semantic annotation of total of 10335 RGBD images. (additional 3D polygon for 3D detection is also available, 3D polygonal for room layout annotation.)
- 4943 new images captured.
- 3784 images using (Kinect v2).
- 1159 using (Intel Realsense ).
- 1449 from NYUD v2 (Kinect v1).
- 554 from B3DO (Kinect v1).
- 3389 selected frames from SUN3D videos (Asus Xtion).
- 19 scene-types (includes most of the NYUD v2 scenes).
- Reference: semantic segmentation different CNN models
- Robot in a room
- Not available.
- NYUD v1
- 7 scenes-types with full labels.
- 12 object classes to classify.
- total 2347 images.
- NYUD v2
- 9 dominant scenes-types.
- 37 dominant categories of object classes.
- total 1449 images.
- Cornell RGBD
- Office and home scene-types
- 28 office scenes (each scene has point cloud annotated bag file)
- 24 home scenes
- separate image with label for each frame is available.
- COLD (Ljubljana+Freiburg+Strucken)
- 5 common scenes (bathroom, kitchen, printer, office, hallway) in all three geo-locations. Additionally other scenes as sequence images.
- RGB only
- karpathy Discovery
- 58 scenes (like Cornell RGBD) of office+kitchen+printer
- 36 office desks + 7 bookshelves + 4 printers + 3 kitchen coutners + 8 miscellaneous living space scenes.
- Types of objects are different than that of NYUD v2; more object centric.
- 3D meshes representations of the scene from kinect fusion + post-processing.
- paspart_challenge: part segmentation
Oct 21, 2015
Inference algorithms in Graphical Model
Inference algorithms in undirected graphical model or markov random field categories:
- Propagation based
- Loopy belief propagation
- Variational method based (approximate not exact)
- Mean field
- Advantage
- Intuition is that complex graphs can be probabilistically simple; in particular, in graphs with dense connectivity there are averaging phenomena that can come into play, rendering nodes relatively insensitive to particular settings of values of their neighbors. This average phenomena leads to simple inference algorithm.
- Monte Carlo method based
- Gibbs sampling based
- Advantage
- simple to implement
- theoretical guarantee to converge
- Disadvantage
- slow to converge
- hard to diagnose
- Exact inference by the Junction-Tree algorithm (Lauritzen and Spiegelhalter, 1988)
- Loopy Belief Propagation (Pearl, 1988)
- Generalized Belief Propagation (Yedidia et al., 2005)
- Tree Re-weighted Belief Propagation (Wainwright et al., 2005)
- Propagation based on convexification of the Bethe free energy (Meshiet al., 2009).
- Mean field (Jordan et al., 1998)
- Gibbs sampling (Geman and Geman, 1984)
Sep 22, 2015
NIPS papers 2015
- Acquiring Visual Classifiers from Human Imagination. Carl Vondric et al.
- 3D Object Proposals for Accurate Object Class Detection. Utrasun et al.
- Precision-Recall-Gain Curves: PR Analysis Done Right. Milis Kull et al.
- Unsupervised Learning by Program Synthesis. Josh Tenenbaum et al.
- Deep Visual Analogy-Making. Honglak Lee et al.
- Lifelong Learning with Non-i.i.d. Tasks. Christopher Lampert et al.
- *Semantic Component Analysis (ICCV-15)
Mar 13, 2015
Mar 12, 2015
Oct 10, 2014
Deep Learning: Caffe installation ubuntu 12.04
This is a concise, concrete, and step-wise instruction for installing caffe in ubuntu 12.04 (guided by the instructions given the caffe authors).
Followings are the prerequisite libraries. Carefully install it all.
All the pre-requisites are installed, now we can proceed to install the caffe.
Expected issues:
Followings are the prerequisite libraries. Carefully install it all.
- atlas:
- sudo apt-get install libatlas-base-dev
- installs into "/usr/include/atlast"
- boost:
- sudo apt-get install libboost-all-dev
- installs into "/usr/include/boost"
- OpenCV:
- sudo apt-get install libopencv-dev
- hd5:
- sudo apt-get install libhdf5-serial-dev
- install into "/usr/lib/"
- Addtionally, if python pip is not installed install it using aptitude.
- anaconda:
- Download and follow instruction.
- Download link
- bash Anaconda-2.1.0-Linux-x86_64.sh
- mdb:
- download the mdb from github
- cd mdb-mdb/libraries/liblmdb
- make
- sudo make install
- google-log:
- wget https://google-glog.googlecode.com/files/glog-0.3.3.tar.gz
- cd glog-0.3.3
- ./configure
- make
- sudo make install
- gflags:
- wget https://github.com/schuhschuh/gflags/archive/master.zip
- cd gflags-master/
- mkdir build && cd build
- export CXXFLAGS="-fPIC" && cmake .. && make VERBOSE=1
- make
- sudo make install
- numpy:
- aptitude search numpy
- sudo aptitude install python-numpy
- install into " /usr/include/numpy"
All the pre-requisites are installed, now we can proceed to install the caffe.
- download the caffe
- go into the caffe-master
- copy and rename the Makefile.config
- do the following change into the Makefile.config
- # CPU-only switch (uncomment to build without GPU support).
CPU_ONLY := 1 - # MATLAB directory should contain the mex binary in /bin. MATLAB_DIR := /usr/local
- PYTHON_INCLUDE := /usr/include/python2.7 \
/usr/lib/python2.7/dist-packages/numpy/core/include - make all
- make test
- make runtest
Expected issues:
- append the PYTHONPATH into your ~/.bashrc file with. The following two instruction will do it for you.
- make python
- make distribute
- anaconda GLIB issue:
- Error: ImportError: `GLIBC_2.15' not found caffe
- Solution: delete the 'libm.so and libm.so.6' from ~/anaconda/lib/
- protobuf issue:
- Error: caffe ImportError: No module named google.protobuf caffe
- Solution:
- find the path where the google-protobuf is installed. for example if it install into "/usr/lib/python2.7/dist-packages/" then do the following into your script.
- import sys
sys.path.append("/usr/lib/python2.7/dist-packages/")
Oct 1, 2014
git
open a git account
------------------------
get git and set your system up with git:
---------------------------------------------------
Create a sample project to push into the repository:
-------------------------------------------------------------------
using ssh:
-------------------------------------------------------------------------------------
Other reference:
------------------------
get git and set your system up with git:
---------------------------------------------------
- install using apt-get:
- get the requisites:
sudo apt-get install libcurl4-gnutls-dev libexpat1-dev gettext libz-dev libssl-dev build-essential
- get git:
wget https://git-core.googlecode.com/files/git-1.8.1.2.tar.gz
- unzip :
tar -zxf git-1.8.1.2.tar.gz
- go into the directory for installation
cd git-1.8.1.2
- install :
make prefix=/usr/local all sudo make prefix=/usr/local install
- setup your github account into the git installed in your system
git config --global user.name "alimurreza123" git config --global user.email alimurreza123@yahoo.com
- If everything works fine you will be able to see the already set user info using the following
git config --list
It should show:
user.name=alimurreza123 user.email=alimurreza123@yahoo.com
- Reference
Create a sample project to push into the repository:
-------------------------------------------------------------------
- create a workspace in your machine and get into the base directory of the project named 'testing':
-
mkdir -p ~/git/testing
cd ~/git/testing
- copy few files and directory there. In real situation you will have your project directories such data, output, src etc.
- converting the existing project into workspace environment
git init
It should show the following message:
Initialized empty Git repository in /home/user/git/testing/.git/
- add everything inside the 'testing' project
git add .
- Push the files using commit
git commit -m "Initial Commit" -a
It says you have committed all the files/folders (-a option) and your message is "Initial commint" (-m) option
Alternately you can add files folders explicitly using by their names
- If you want to push it into some remote server you need to push the project using 'push' from git.
git remote add origin ssh://git@github.com:alimurreza123/testing.git
- If the above does not work try the below:
- git remote set-url origin https://github.com/alimurreza/testing
- Now push the project 'testing' into github repository
git push origin master
It should show the something similar like this:
Counting objects: 6, done. Delta compression using up to 8 threads. Compressing objects: 100% (6/6), done. Writing objects: 100% (6/6), 2.06 KiB, done. Total 6 (delta 0), reused 0 (delta 0) To git@github.com:alimurreza123/testing.git * [new branch] master -> master
- If the above does not work try force push as follows:
git push -f origin master- "git push tells git that we want to push our changes, "origin" is the name of our newly-configured remote server and "master" is the name of the first branch."
- You may need to setup you ssh-key before you can do this. Following talks about it.
- Reference:
- Add a folder
- git add matlab_src
- git add matlab_src/*
- git commit
- git push
- Remove files
- git rm afile.m
- git commit -m "removing my file"
- git push
- Update files
- git pull
- set url
- git remote set-url origin https://github.com/alimurreza/electro_migration_failure_pred
- git commit -m "Initial commit"
- git push
- ssh-keygen -t ed25519 -C alimurreza@gmail.com
- pbcopy < ~/.ssh/id_ed25519.pub
- Go to github-->settings-->SSH & GPG Key
- then just paste it
using ssh:
-------------------------------------------------------------------------------------
- generate the public-private key pair
- Add the public key in your github settings
- select the paraphrase wisely. You will be prompted to enter the paraphrase when you want to push files into remote repository such as github.
- cloning a repository
- git clone https://github.iu.edu/mdreza/electro_migration_failure_pred.git
- for cloning into iu server:
- git clone https://github.com/alimurreza/electro_migration_failure_pred.git
- git checkout master
Other reference:
May 21, 2014
Latex stuff
- Use hyphen in math mode
- $Non\mbox{-}object$
- Multiline equation: \usepackage{amsmath}
- \begin{equation}
- \begin{split}
- ... \\
- \end{split}
- \end{equation}
- displaying-a-wide-figure-in-a 2 column doc
- trick is to use \begin{figure*} instead of \begin{figure}
Apr 22, 2014
Feb 23, 2014
Dec 17, 2013
Nov 27, 2013
Nov 2, 2013
Drone programming
I spent a little time learning how to program a Quadcoptor or Hexacoptor UAVs. We had a small workshop today at GMU. I just started learning how to fly/move/land etc a quadcoptor UAV (Parrot AR Drone 2.0). Quick summary to get things started:
- Install node.js (build on javacript runtime to make network application)
- Proceed to installing it with the following steps in terminal
- ./configure
- make
- sudo make install
- Download ar-drone library (An implementation of the networking protocols used by the Parrot AR Drone 2.0.)
- You can do it by another software npm (Node Packaged Modules) which allows user to get node.ja application via command line. Install it first (if you don't have it), then get the ar-drone library using npm:
- sudo apt-get install npm
- npm install ar-drone
- Now create a simple program e.g., test_drone.js which will allow the ar-drone to takeoff and stay hovering for some seconds then land down on earth.
- var arDrone = require('ar-drone');
var client = arDrone.createClient();
client.takeoff();
client.after(8000, function() {
this.stop();
this.land();
}); - Run the javascript from command prompt
- node test_drone.js
- Congratulations your drone is flying. You can continue building (see the tutorial) on the program to do some more fun stuffs such as receiving the video output from the drone and make an amazing video of your campus. Here (taken from Quadcoptor and Hexacoptor UAVs) is one that is done in our George Mason University, Fairfax campus.
- Other reference
Nov 1, 2013
Visualizing octomap in rviz
- plotting-a-markerarray-of-spheres-with-rviz
- they suggested to get the electric version or later version of rviz where there is MarkerArray type display.
- octomap_server publishes topic occupied_cells_vis_array. I was unable to visualize it. In rviz (diamond back version), there is no display type called MarkerArray. There is Markers type display, that I can add from the display list. Finally, I added Markers type display with topic name occupied_cells_vis (notice I omitted _array as suggested by others) and I can visualize the octomap in rviz.
- Add display item with MarkerArray with topic occupied_cells_vis (rviz snapshot)
- rviz tutorial
- octomap-server-rviz-mapping:
- octomap_server subscribes to topic cloud_in.
- octomap_server related questions and answers
- octomap-not-updating-the-map-in-real-time
- marker-array-not-visible-in-rviz-but-is-getting-published
- Try
rostopic echo normals_marker_arrayto see if messages are actually being published. - I did something similar: rostopic echo occupied_cells_vis_array to see the message in the topic occupied_cells_vis_array published by octomap_server
- octomap_server
Octomap linking issue resolved
OctomapGenerator node was not building under ROS. There was linking issue
with the octomap package used by the node.
export octomap_DIR=~/octomap-distribution/lib/cmake/octomap
rosmake rgbd_mapping OctomapGenerator
with the octomap package used by the node.
export octomap_DIR=~/octomap-distribution/lib/cmake/octomap
rosmake rgbd_mapping OctomapGenerator
Oct 31, 2013
Cmake workflow
This process is run for each CMake project.
# In a CMake project $ mkdir build $ cd build $ cmake .. $ make $ make install # (optionally)
Oct 30, 2013
Sell your idea
how-to-sell-ideas-like-gladwell
Three factors works for his way:
1. KISS (Keep it simple and stupid).
2. Story telling.
3. Introduce curiosity gap; don't just give the answer right away.
Three factors works for his way:
1. KISS (Keep it simple and stupid).
2. Story telling.
3. Introduce curiosity gap; don't just give the answer right away.
Subscribe to:
Posts (Atom)
Notebooks
illuminate.google.com notebooklm.google.com
-
To install pngwrite we need to install to helper library before we install pngwriter. 1. libpng 2. freetype2 We can use fink or macport to i...
-
Unity engine Unreal engine Godot engine






