COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar...
Transcript of COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar...
![Page 1: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/1.jpg)
COOL SHITInspiring Creation and Creating Inspiration
Doug McCune
![Page 2: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/2.jpg)
FUCKSH I TDAMN
I still love you
![Page 3: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/3.jpg)
MY STORY
![Page 4: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/4.jpg)
My story
• picture of me happy
March, 2007
![Page 5: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/5.jpg)
My story
• picture of me busy and rich
August, 2008
![Page 6: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/6.jpg)
February, 2009
![Page 7: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/7.jpg)
FUCK FLEX
![Page 8: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/8.jpg)
Flex is a crutch, it's a box. Fuck Flex, leave it behind. If I'm hitting a brick wall then I need to find another road. Somewhere there's a path that leads higher up the mountain instead of circling at the same altitude. I'm driving faster and faster, but all that does is get me back to where I started in less and less time. I'm repeating myself repeating myself, and in the process I'm getting dizzy. I'm getting sick. Time to pull over. Time to get out of the car. I'll walk up this fucking mountain if that's the only way to get a different perspective.
![Page 9: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/9.jpg)
I’ll be talking about:
Steganography
Head Tracking
Augmented Reality
![Page 10: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/10.jpg)
This is not a talk about:
Steganography
Head Tracking
Augmented Reality
![Page 11: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/11.jpg)
This is really about:
Inspiration
Exploration
Creation
10
![Page 12: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/12.jpg)
STEGANOGRAPHY
![Page 13: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/13.jpg)
WTF is Steganography?
• Wikipedia says: “the art and science of writing hidden messages in such a way that no-one, apart from the sender and intended recipient, suspects the existence of the message, a form of security through obscurity”
• Doug says: “Straight up CSI shit”
![Page 14: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/14.jpg)
Inspiration
![Page 15: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/15.jpg)
Lee’s Dead Drop
—-[ GPS location (52.370067, 4.896679) - Wall to the left of room
617 - Need UV ]—-
http://theflashblog.com/?p=765http://theflashblog.com/?p=783
![Page 16: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/16.jpg)
Exploration: File Types for Steganography
• Graphics formats: BMP (super easy), PNG (kinda easy), GIF (not sure)
• Audio: MP3 (no idea)
• SWF?
• How do you learn? Read the specs, read Wikipedia
![Page 17: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/17.jpg)
Exploration: Least Significant Bit
• One RGB pixel: #RRGGBB
• Composed of 4 bytes (8 bits each)
• We only modify the last bit of each byte (which might mean no modification)
01010101010101010101010101010101
01010101010101010101010101010101
01010100010101010101010101010100
original bytes modified bytes
![Page 18: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/18.jpg)
Exploration:Comparing BMP and PNG
Header
Raw pixels 0x000000
0x00FF00
0x00FFFF...
54 bytes IHDR N bytes
IDAT filter byte
pixels for row 1
filter byte
pixels for row 2
BMP PNG
![Page 19: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/19.jpg)
Exploration: Open Source PNG Libraries
• PNGEncoder - part of the Flex framework
• PNGDecoder - written by Heriet (heriet.info)
![Page 20: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/20.jpg)
Creation
![Page 21: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/21.jpg)
STEGAsaurus
• AIR app for embedding and extracting secrets from PNG files
• hide secret text messages
• drag and drop files to hide them in an image
![Page 22: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/22.jpg)
Take it to the next level
• Encrypt a SWF within a PNG and load it at runtime as an RSL or a Flex module
• Encrypt inside mp3s and playback secret message with text to voice software (Merapi?)
• AIR web browser that would show secret messages in images while browsing
• Use TwitPic to tweet secret messages hidden in images
30
![Page 23: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/23.jpg)
HEAD TRACKING
![Page 24: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/24.jpg)
Inspiration:Johnny Lee
http://johnnylee.net/projects/wii/
![Page 25: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/25.jpg)
![Page 26: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/26.jpg)
Inspiration: Flash Demos
Boffswana mr. doobhttp://mrdoob.com/90/Face_tracking_+_3D_Scenehttp://www.boffswana.com/news/?p=498
![Page 27: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/27.jpg)
Exploration: Marilena and Deface
• Marilena is written by Masakazu Ohtsuka
• part of the Japanses libspark project (which also includes FLARToolkit and other badass stuff)
• Deface is written by Steve Shipman
• both are based on OpenCV that uses “Haar Cascades” to detect faces
![Page 28: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/28.jpg)
Exploration: Haar Cascades
• Converts image to numeric computed values (based on surrounding pixel values)
• Scans for known “feature sets” in an image
• Tree-based structure with an array of root feature nodes
• Scans over and over at different resolutions
• I think it might be racist
![Page 29: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/29.jpg)
Exploration: Haar Cascades
• The algorithm was designed to efficiently scan one image once
• NOT designed to continuously scan live video
• But with some simple changes we can fix that
![Page 30: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/30.jpg)
Creation: Flash Target Demo
![Page 31: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/31.jpg)
Creation: Safe Sexting
![Page 32: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/32.jpg)
Head Tracking in Games
http://www.youtube.com/watch?v=e2ay5jOGI0w
![Page 33: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/33.jpg)
Creation:Crappy Top Gun Game
![Page 34: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/34.jpg)
Take it to the next level
• Make some games that don’t suck
• Multi-player head tracking games using CoCoMo
• Eigenfaces AS3 implementation
• used during login to check identity
• restore user’s preferences based on who they are
• customize UI based on gender or race ( and prepared to get sued)
50
![Page 35: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/35.jpg)
AUGMENTED REALITY
![Page 36: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/36.jpg)
Inspiration: Early Flash Webcam Examples from Grant Skinner
http://www.gskinner.com/blog/archives/2005/08/flash_8_webcam.htmlhttp://www.gskinner.com/blog/archives/2005/11/flash_8_webcam_1.html
![Page 37: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/37.jpg)
Inspiration: Early FLARToolkit Demos
http://www.boffswana.com/news/?p=392
![Page 38: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/38.jpg)
Inspiration: JackLinks Sasquatch
http://www.livingsasquatch.com/
![Page 39: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/39.jpg)
Inspiration: GE Smart Grid
http://ge.ecomagination.com/smartgrid/#/augmented_reality
![Page 40: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/40.jpg)
Inspiration: Topps Baseball Cards
http://www.toppstown.comhttp://www.youtube.com/watch?v=QAjEGqGnpFI
![Page 41: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/41.jpg)
Inspiration: Crazy AR Games
http://turing.lecolededesign.com/flasorne/http://vimeo.com/3853814
![Page 42: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/42.jpg)
Inspiration: Weird Dolls from Japan
http://www.geishatokyo.com/jp/ar-figure/figure.html
![Page 43: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/43.jpg)
Exploration:FLARToolkit
• ARToolkit is the base, written in C
• FLARToolkit is a AS3 port (C ported to Java ported to AS3)
• http://www.libspark.org/wiki/saqoosha/FLARToolKit/en
• WARNING: GPL License
![Page 44: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/44.jpg)
Creation:Dress Up
• I apologize in advance for what I am about to do
![Page 45: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/45.jpg)
Take it to the next level
• Greeting cards
• Wearable AR clothing
• Dorky graffiti
• Screw Flash, it’s about the iPhone
1:10
![Page 46: COOL SHIT - Doug McCunedougmccune.com/360Flex_Indy/Doug_McCune-360Flex_Indy_CoolShit.pdfHaar Cascades • Converts image to numeric computed values (based on surrounding pixel values)](https://reader035.fdocuments.net/reader035/viewer/2022072902/5f2ec57a0eca2572600b26f5/html5/thumbnails/46.jpg)
WHAT’S ON YOUR LIST?