Thursday, November 21, 2019

Linux System Information



Find if your Linux is 64 bit is by using:

$getconf LONG_BIT

`uname -m` tells only about the kernel, the userspace and distro can be still 32-bit. Similarly `lscpu` only tells what the CPU is capable of, not if OS, kernel and distro are 32 or 64 bit.
 
 
$file /lib/systemd/systemd
$lscpu
$uname -i
$uname -m 
$dpkg --print-architecture
 

Tuesday, November 19, 2019

cuda 8.0 compile related


Compile cuda-z

    https://sourceforge.net/p/cuda-z/code/HEAD/tree/trunk/


Cuda 8.0 and Qt5


$qmake file.pro

$make


1) Error fPIC

error: #error "You must build your code with position independent code if Qt was built with -reduce-relocations. " "Compile your code with -fPIC (-fPIE is not enough)."

 #  error "You must build your code with position independent code if Qt was built with -reduce-relocations. "\


#sol, add next parameter in Makefile


$nvcc -shared -Xcompiler -fPIC

2) Compile error , comment CZ_VER_BUILD block

3) Error link stage

bld/o/czdialog.o: In function `CZDialog::getCudaDeviceNumber()':

czdialog.cpp:(.text+0x421): undefined reference to `CZCudaDeviceFound'

bld/o/czdeviceinfo.o: In function `CZCudaDeviceInfo::prepareDevice()':

czdeviceinfo.cpp:(.text+0x569): undefined reference to `CZCudaCalcDeviceSelect'

bld/o/czdeviceinfo.o: In function `CZCudaDeviceInfo::updateInfo()':

czdeviceinfo.cpp:(.text+0x5c5): undefined reference to `CZCudaCalcDeviceBandwidth'

czdeviceinfo.cpp:(.text+0x5d2): undefined reference to `CZCudaCalcDevicePerformance'

bld/o/czdeviceinfo.o: In function `CZCudaDeviceInfo::readInfo()':

czdeviceinfo.cpp:(.text+0x448): undefined reference to `CZCudaReadDeviceInfo'

bld/o/czdeviceinfo.o: In function `CZCudaDeviceInfo::prepareDevice()':

czdeviceinfo.cpp:(.text+0x585): undefined reference to `CZCudaPrepareDevice'

bld/o/czdeviceinfo.o: In function `CZCudaDeviceInfo::cleanDevice()':

czdeviceinfo.cpp:(.text+0x615): undefined reference to `CZCudaCleanDevice'

bld/o/czcommandline.o: In function `CZCommandLine::printDeviceList()':

czcommandline.cpp:(.text+0x45b5): undefined reference to `CZCudaDeviceFound'

czcommandline.cpp:(.text+0x46e8): undefined reference to `CZCudaReadDeviceInfo'

bld/o/czcommandline.o: In function `CZCommandLine::exec()':

czcommandline.cpp:(.text+0x4b16): undefined reference to `CZCudaDeviceFound'

czcommandline.cpp:(.text+0x4e2c): undefined reference to `CZCudaReadDeviceInfo'

czcommandline.cpp:(.text+0x4fbb): undefined reference to `CZCudaPrepareDevice'

czcommandline.cpp:(.text+0x4fd0): undefined reference to `CZCudaCalcDeviceBandwidth'

czcommandline.cpp:(.text+0x52fe): undefined reference to `CZCudaCalcDevicePerformance'

czcommandline.cpp:(.text+0x561f): undefined reference to `CZCudaCleanDevice'

bld/o/main.o: In function `testCudaPresent()':

main.cpp:(.text+0x2): undefined reference to `CZCudaCheck'

bld/o/main.o: In function `getCudaDeviceNum()':

main.cpp:(.text+0x4c): undefined reference to `CZCudaDeviceFound'

main.cpp:(.text+0x96): undefined reference to `CZCudaReadDeviceInfo'


#sol, change order of object files


$ g++ -m64 -Wl,-O1 -o bin/cuda-z bld/o/main.o bld/o/cudainfo.o bld/o/czdialog.o bld/o/czdeviceinfo.o bld/o/czdeviceinfodecoder.o bld/o/czcommandline.o bld/o/log.o bld/o/platform.o bld/o/qrc_cuda-z.o bld/o/moc_czdialog.o bld/o/moc_czdeviceinfo.o bld/o/moc_czdeviceinfodecoder.o bld/o/moc_czcommandline.o   -L /usr/local/cuda/lib64 -L/usr/X11R6/lib64 -lcudart_static -ldl -lm -lrt -lQt5Widgets -lQt5Gui -lQt5Network -lQt5Core -lGL -lpthread

4) Execution error
./cuda-z: error while loading shared libraries: bld/o/cudainfo.o: cannot open shared object file: No such file or directory


#sol, move from bin to ..

$./cuda-z


Wednesday, November 13, 2019

Saturday, October 26, 2019

Vulkan Resources


[1] Vulkan-sdk https://www.lunarg.com/vulkan-sdk/
[2] Download https://vulkan.lunarg.com/
[3] Document
https://vulkan.lunarg.com/doc/view/1.1.101.0/linux/getting_started.html
https://vulkan.lunarg.com/doc/view/1.1.70.1/linux/getting_started.html
[4] C++ binding https://github.com/KhronosGroup/Vulkan-Hpp

[5] Examples https://github.com/SaschaWillems/Vulkan

[] gli, C++ image library. Works with OpenGL or Vulkan https://github.com/g-truc/gli

Sunday, October 20, 2019

https://github.com/alexjc/neural-enhance
https://github.com/idealo/image-super-resolution

Saturday, October 19, 2019

Fluids mandatory lectures



Navier-Stokes-equations
[0] Thesis: Parallel architecture to solve NSE https://tel.archives-ouvertes.fr/tel-01152623/document


[1] https://www.quora.com/What-are-the-uses-of-the-Bernoulli-equations-Eulers-equations-and-the-Navier-Stokes-equations-and-when-do-we-apply-them
[2] Prof. Wang http://web.cse.ohio-state.edu/~wang.3602/
[2] http://web.cse.ohio-state.edu/~wang.3602/courses/cse3541-2019-fall/
[2] Course http://web.cse.ohio-state.edu/~wang.3602/courses/cse788-2011-fall/
[2.1] SPH Water Simulation equations http://web.cse.ohio-state.edu/~wang.3602/courses/cse788-2011-fall/results/Yi_Liu/SPH%20Water%20Simulation.htm
[3] https://www.comsol.jp/multiphysics/fluid-flow-conservation-of-momentum-mass-and-energy
[4] Matthias Müller http://matthias-mueller-fischer.ch/
[5] CFD Intro https://www.mathematik.uni-dortmund.de/~kuzmin/cfdintro/lecture1.pdf


Others
[1] CSG https://evanw.github.io/csg.js/

Sunday, October 06, 2019

Quadtree/Octree Resources



Dual Marching Cubes
[1] C++ https://github.com/planaria/dmc
[2] C++ https://github.com/dominikwodniok/dualmc
[3] Dual MC, C++ https://github.com/VVingerfly/surfRecon

Python Quadtree
[1] https://github.com/karimbahgat/Pyqtree
[2] https://github.com/ceumicrodata/quadtree
[3] https://kpully.github.io/Quadtrees/



References:
[1] quad-boost https://arxiv.org/pdf/1607.03292.pdf
[2] Morton code http://www.cs.umd.edu/~hjs/pubs/ShaffIVC88.pdf
[3] https://www.slideserve.com/bessie/dual-marching-cubes

Monday, September 30, 2019

Thursday, September 26, 2019

PCA/WPCA

Video Lectures
[1] SVD to PCA https://www.youtube.com/watch?v=mBcLRGuAFUk

Lectures
[1] https://skymind.ai/wiki/eigenvector
[2] https://www.projectrhea.org/rhea/index.php/PCA_Theory_Examples


[3] PCA Theory Example http://www.cs.otago.ac.nz/cosc453/student_tutorials/principal_components.pdf

[4] Animation 2D PCA https://www.intmath.com/matrices-determinants/eigenvalues-eigenvectors-concept-applet.php


[5] PCA on OpenCV
https://robospace.wordpress.com/2013/10/09/object-orientation-principal-component-analysis-opencv/


[6] Wavelets, Fourier, Kalman http://www.cs.otago.ac.nz/cosc453/





Resources:
[1] https://machinelearningmastery.com/calculate-principal-component-analysis-scratch-python/
[2] https://jakevdp.github.io/PythonDataScienceHandbook/05.09-principal-component-analysis.html
[3] Draw 2D principal axis PCA https://stackoverflow.com/questions/18299523/basic-example-for-pca-with-matplotlib

Saturday, September 21, 2019

Alternatives to Renderman

https://github.com/POV-Ray/povray/tree/3.7-stable/unix

Friday, September 20, 2019

Point Splatting codes


Compile GLviz
[1] code https://github.com/sebastianlipponer/glviz

     error: storage size of ‘shell_surface_listener’ isn’t known
 static const struct wl_shell_surface_listener shell_surface_listener = {


      solution: add #include "wayland-client-protocol.h" in SDL_waylandwindow.c


Not able to make successfully - undefined reference to symbol 'XCreateBitmapFromData'
add into extern/anttweakbar/CMakeLists.txt after set_target_properties(anttweakbar ... )

if (UNIX)
    target_link_libraries(anttweakbar X11)
endif()


Based on GLViz
[2] Surface Splatting code https://github.com/sebastianlipponer/surface_splatting

      error: storage size of ‘shell_surface_listener’ isn’t known
 static const struct wl_shell_surface_listener shell_surface_listener = {


      solution: add #include "wayland-client-protocol.h" in SDL_waylandwindow.c

Not able to make successfully - undefined reference to symbol 'XCreateBitmapFromData'
add into extern/anttweakbar/CMakeLists.txt after set_target_properties(anttweakbar ... )

if (UNIX)
    target_link_libraries(anttweakbar X11)
endif()

Graphics Guide



Persons:

[1] Point Splatting https://cgg.mff.cuni.cz/~jaroslav/

Thursday, September 12, 2019

SPH on Python

Based on https://pysph.readthedocs.io/en/1.0a1/installation.html
                https://pysph.readthedocs.io/en/latest/installation.html
Examples https://pypi.org/project/PySPH/

python3.2 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())"
python3 -m venv /path/to/new/virtual/environment
 
 
Object arrays cannot be loaded when allow_pickle=False
pip install numpy==1.16.1
pip3 install PyQt5

 [1] SPH on Python https://github.com/pypr/pysph

Saturday, August 31, 2019

Word cloud

Python codes
[1] https://www.geeksforgeeks.org/generating-word-cloud-python/

Computer Graphics books




Basic in Fluids
Fluid Simulation for Computer Graphics Robert Bridson
The Art of Fluid Animation Jos Stam
Fluid Engine Development Doyub Kim


Fluid Simulations
 

 [1] Mathematics for 3D Game Programming and Computer Graphics


http://canvas.projekti.info/ebooks/Mathematics%20for%203D%20Game%20Programming%20and%20Computer%20Graphics,%20Third%20Edition.pdf
 [2] Computer Graphics Programming in OpenGL with C++
 [3] Opengl http://newton.uam.mx/xgeorge/uea/graficacion/(Morgan%20Kaufmann)%20Advanced%20Graphics%20Programming%20Using%20OpenGL%20(2005).pdf
 [4] 3D Graphics http://www.cse.chalmers.se/edu/year/2018/course/TDA361/LearningModern3DGraphicsProgramming.pdf
 [5]Foundations of 3D Computer Graphics
 [6] Interactive Computer Graphics https://inspirit.net.in/books/academic/Interactive%20Computer%20Graphics.pdf







Thursday, August 29, 2019

Anti Aliasing Lectures


Lectures
[1] http://cs248.stanford.edu/winter19content/lectures/02_drawtriangle/02_drawtriangle_slides.pdf
[2] http://graphics.stanford.edu/courses/cs348b-19-spring-content/lectures/08_sampling/08_sampling_slides.pdf
[3] http://www8.cs.umu.se/kurser/TDBC07/HT04/handouts/HO-lecture5.pdf


References:
[1] Super Sample http://hhoppe.com/proj/supersample/
Amortized Supersampling  http://hhoppe.com/supersample.pdf
[2] Sampling https://noahmjacobs.com/graphics/rasterizer/
[3] MultiSampling https://learnopengl.com/Advanced-OpenGL/Anti-Aliasing
[4] Anti Aliasing https://vr.arvilab.com/blog/anti-aliasing

Super-sampling Anti-aliasing Analyzed https://pdfs.semanticscholar.org/ebd9/ddb08c4244fc7df00672cacb420212cdde54.pdf

Comparison for R.T. Applications http://jacoblongazo.com/documents/Anti-Aliasing%20Paper.pdf


Related:
[1] Deep Learning Super resolution (2019) https://arxiv.org/pdf/1808.03344.pdf

Machine intelligence







Google brain https://research.google.com/bigpicture/

Mathematical Morphology on Graphs



References:
[1] A graph-based mathematical morphology reader https://arxiv.org/pdf/1404.7748.pdf
[2] Morphological filtering on graphs https://hal.archives-ouvertes.fr/hal-00700784v1/document

Monday, August 26, 2019

CGAL Alpha Shape Demos


Install CGAL
sudo apt-get install libcgal-dev

Compiling
g++ ex_alpha_shapes3.cpp -o ex1 -lCGAL -lgmp -frounding-math

Install Dependences for AlphaShape code

qtscript5-dev
libqt5opengl5-dev
libqt5svg5-dev

Others
[1] Poisson Disk Sample http://devmag.org.za/2009/05/03/poisson-disk-sampling/

Running apps

Runtastic (I uninstalled because force to update your device - Internet connection problems) Runkeeper  (Wrong GPS tracking) Strava   (Curr...