General knowledge
http://www.media.mit.edu/pia/Research/deepview/exif.html
Two utilities.
exiftool: Perl
http://www.sno.phy.queensu.ca/~phil/exiftool/
exiv2: C++
http://www.exiv2.org/
exiftool is better than exiv2 in terms of extracting more information.
For a sample GPS.JPG,
exiv2 output
~/exiv2-0.25/bin$ ./exiv2 GPS.jpg
File name : GPS.jpg
File size : 2133 Bytes
MIME type : image/jpeg
Image size : 120 x 80
Camera make : FUJIFILM
Camera model : FinePixS1Pro
Image timestamp : 2002:07:13 15:58:28
Image number :
Exposure time : 1/724 s
Aperture : F0.64
Exposure bias : -1090519041/1677721600 EV
Flash : No flash
Flash bias :
Focal length : 0.0 mm
Subject distance:
ISO speed :
Exposure mode : Shutter priority
Metering mode : Multi-segment
Macro mode :
Image quality :
Exif Resolution : 2400 x 1600
White balance :
Thumbnail : image/jpeg, 28 Bytes
Copyright : ian Britton - FreeFoto.com
Exif comment :
exiftool output
~/exiv2-0.25/bin$ ./exiv2 GPS.jpg
File name : GPS.jpg
File size : 2133 Bytes
MIME type : image/jpeg
Image size : 120 x 80
Camera make : FUJIFILM
Camera model : FinePixS1Pro
Image timestamp : 2002:07:13 15:58:28
Image number :
Exposure time : 1/724 s
Aperture : F0.64
Exposure bias : -1090519041/1677721600 EV
Flash : No flash
Flash bias :
Focal length : 0.0 mm
Subject distance:
ISO speed :
Exposure mode : Shutter priority
Metering mode : Multi-segment
Macro mode :
Image quality :
Exif Resolution : 2400 x 1600
White balance :
Thumbnail : image/jpeg, 28 Bytes
Copyright : ian Britton - FreeFoto.com
Exif comment :
EXIF tags:
http://www.exiv2.org/tags.html
Write comments
Both can read/write comments.
./exiv2 -M"set Exif.Photo.UserComment charset=Ascii testtest" test.jpg
============
http://stackoverflow.com/questions/8937963/save-custom-metadata-in-an-image-taken-from-avfoundation-in-ios
Tuesday, May 31, 2016
Sunday, May 29, 2016
Blender => OpenGL ES
Blender tutorials
https://www.raywenderlich.com/49955/blender-tutorial-for-beginners-how-to-make-a-mushroom
http://cgcookie.com/blender/cgc-courses/blender-basics-introduction-for-beginners/
http://www.blender.org/education-help/tutorials/
http://blendtuts.com/blender_tutorials?field_level_value=Beginner
OpenGL ES
https://www.raywenderlich.com/?p=5223
https://www.raywenderlich.com/3664/opengl-tutorial-for-ios-opengl-es-2-0
Blender to OpenGL ES
https://www.raywenderlich.com/48293/how-to-export-blender-models-to-opengl-es-part-1
https://www.raywenderlich.com/48297/export-blender-models-opengl-es-part-2
https://www.raywenderlich.com/48299/export-blender-models-opengl-es-part-3
https://www.raywenderlich.com/49955/blender-tutorial-for-beginners-how-to-make-a-mushroom
http://cgcookie.com/blender/cgc-courses/blender-basics-introduction-for-beginners/
http://www.blender.org/education-help/tutorials/
http://blendtuts.com/blender_tutorials?field_level_value=Beginner
OpenGL ES
https://www.raywenderlich.com/?p=5223
https://www.raywenderlich.com/3664/opengl-tutorial-for-ios-opengl-es-2-0
Blender to OpenGL ES
https://www.raywenderlich.com/48293/how-to-export-blender-models-to-opengl-es-part-1
https://www.raywenderlich.com/48297/export-blender-models-opengl-es-part-2
https://www.raywenderlich.com/48299/export-blender-models-opengl-es-part-3
Thursday, May 19, 2016
2D Shape Recognition
http://stackoverflow.com/questions/25148136/2d-shape-recognition-algorithm-looking-for-guidance
http://www.tina-vision.net/docs/memos/1996-003.pdf
http://graphics.stanford.edu/courses/cs468-08-fall/pdf/belongie-pami02.pdf
https://www.robots.ox.ac.uk/~vgg/publications/2003/Mikolajczyk03a/mikolajczyk03a.pdf
http://www.ece.ncsu.edu/imaging/Publications/2007/ShapePaper.pdf
http://ijcsi.org/papers/IJCSI-10-6-1-162-166.pdf
simple shape recognition algorithms performance
http://www.tina-vision.net/docs/memos/1996-003.pdf
http://graphics.stanford.edu/courses/cs468-08-fall/pdf/belongie-pami02.pdf
https://www.robots.ox.ac.uk/~vgg/publications/2003/Mikolajczyk03a/mikolajczyk03a.pdf
http://www.ece.ncsu.edu/imaging/Publications/2007/ShapePaper.pdf
http://ijcsi.org/papers/IJCSI-10-6-1-162-166.pdf
simple shape recognition algorithms performance
Wednesday, May 18, 2016
iOS graphics
http://www.sunsetlakesoftware.com/
https://github.com/BradLarson/GPUImage
https://github.com/BradLarson/GPUImage2
http://code.tutsplus.com/tutorials/build-a-photo-app-with-gpuimage--mobile-12223
https://www.youtube.com/watch?v=6J_0PrmdD38
https://www.raywenderlich.com/77488/ios-8-metal-tutorial-swift-getting-started
https://github.com/BradLarson/GPUImage
https://github.com/BradLarson/GPUImage2
http://code.tutsplus.com/tutorials/build-a-photo-app-with-gpuimage--mobile-12223
https://www.youtube.com/watch?v=6J_0PrmdD38
https://www.raywenderlich.com/77488/ios-8-metal-tutorial-swift-getting-started
Saturday, May 14, 2016
CALayer
https://developer.apple.com/library/ios/documentation/GraphicsImaging/Reference/CALayer_class/
alpha:
Simply change opacity directly. The range is within [0.0f, 1.0f]
http://stackoverflow.com/questions/15865500/calayer-sublayer-alpha-overriding
http://stackoverflow.com/questions/12448847/calayer-opacity-animation
rounded corner:
Can be changed on the fly through "setCornerRadiu"
http://stackoverflow.com/questions/4754392/uiview-with-rounded-corners-and-drop-shadow
frame:
Can be changed on the fly by writing to frame directly
contentsGravity vs contentsScale vs transform/affineTransform
contentsScale: 1 => 1 pixel per point, n=> n pixels per point
- when kCAGravityResizeAspect / kCAGravityCenter
If out of bound, masksToBounds property is useful.
contentsRect: 0-1.0. unit coordinates.
- sprite sheets:
contentsCenter: area can be stretched.
alpha:
Simply change opacity directly. The range is within [0.0f, 1.0f]
http://stackoverflow.com/questions/15865500/calayer-sublayer-alpha-overriding
http://stackoverflow.com/questions/12448847/calayer-opacity-animation
rounded corner:
Can be changed on the fly through "setCornerRadiu"
http://stackoverflow.com/questions/4754392/uiview-with-rounded-corners-and-drop-shadow
frame:
Can be changed on the fly by writing to frame directly
contentsGravity vs contentsScale vs transform/affineTransform
contentsScale: 1 => 1 pixel per point, n=> n pixels per point
- when kCAGravityResizeAspect / kCAGravityCenter
If out of bound, masksToBounds property is useful.
contentsRect: 0-1.0. unit coordinates.
- sprite sheets:
contentsCenter: area can be stretched.
Wednesday, May 11, 2016
Ultra low power microcontroller
ATtiny43U
AVR652: http://www.atmel.com/Images/doc8249.pdf
ATtinyX3U + STK600:
http://www.atmel.com/devices/ATTINY43U.aspx?tab=tools
http://www.instructables.com/id/How-to-make-a-cheap-Attiny-Arduino-Board/?ALLSTEPS
https://hackaday.io/
https://hackaday.io/projects/tag/2015HackadayPrize
AVR652: http://www.atmel.com/Images/doc8249.pdf
ATtinyX3U + STK600:
http://www.atmel.com/devices/ATTINY43U.aspx?tab=tools
http://www.instructables.com/id/How-to-make-a-cheap-Attiny-Arduino-Board/?ALLSTEPS
https://hackaday.io/
https://hackaday.io/projects/tag/2015HackadayPrize
Subscribe to:
Posts (Atom)