So I went to DEFCON last week in Vegas, and it was great fun learning about all the ways software and hardware isn't safe. It's definitely different from SIGGRAPH (well obviously) in that the SIGGRAPH crowd is concerned with high math and creating art, whereas the DEFCON crowd are hackers in the traditional sense of the word. Both are pretty amazing. Hopefully I'll get to go to some convention next year as well.
Two of my favorite talks were about Femtocells and Schlage locks:
(1) 'I can hear you now - Traffic interception and Remote mobile phone cloning' by ISEC Partners on how they got root access to Verizon's Samsung femtocells and wrecked havoc with it. Femtocells are bible-sized cell towers for homes/ small enterprises that were invented to offload 3G connection. If your phone's on that provider and the femtocell's signal is stronger than the base station, your phone will automatically connect to the femtocell without user interaction.
Unfortunately, their security is pretty weak for how potent they are. Getting root access is easy, and your phone also gives its unique ID to the femtocell, which means that if this information is written to another cell, your phone is closed and an attacker could drop calls, get SMSs, listen in on your credit card/ SSN-getting conversations with some marketer. All without physical access to your phone.
Cloning is not the only thing. The femtocell itself can record your calls (one can decode the encrypted speech signals by grep-ping for the codec), capture your SMS packets, and smartphone data is plain text so since data middling is easy an attacker could show your a fake Chase login and get your username/password EASY.
(2) Key duplication for the high security Schlage Locks by the MIT locks club. Schlage locks are extremely resistant to picking because of the extra line of teeth running across the side of the key. So these lock hobbyists turned to key duplication. While manual cutting takes a practiced person with the right tools less than an hour, ordering a 3D printed key is much cheaper and more reliable. They wrote 100-lines of code which makes use of a modeling library such that your just have to note the teeth combination of the key you want to duplicate, feed it to a function, and out pops a 3D model of the key. Since 3D printers have sufficient precision nowadays, and are cheap ($1-3), it's a simple matter of filing an order online and waiting for the resulting model. They found that hard plastic was durable enough to open most Schlage locks.
Showing posts with label graphics. Show all posts
Showing posts with label graphics. Show all posts
Monday, August 12, 2013
Tuesday, March 19, 2013
First ray tracer
Currently does bare basic ray tracing: Phong illumination and shadowing with spheres/ ellipsoids. I hope to add arbitrary object support, reflection and refraction, and acceleration.
Buggy: no color clamping, wrong diffuse calculation

Final
Buggy: no color clamping, wrong diffuse calculation

Final

Thursday, October 4, 2012
Interesting Sig12 papers
This week, I read almost all the Siggraph 2012 and SigAsia 2012 abstracts. My goal was to get an idea of what good research entails (i.e. the scope; detail), and what areas of computer graphics are exciting. I then filtered for the most interesting papers to read.
Reading the papers, it occurred to me that maybe animators today subconsciously limit their imagination because of present day tools. While there are mind numbing breakthroughs in every movie, I think that just as if you limited an artist to charcoal he wouldn't think in color, similarly an animator would have a limited mindset. That's why it would still be exciting to see animation 10 years from now, when a new generation of animators have grown up on a new wave of production technology.
Here's the list. It is a fairly broad variety:
Cloth
Stitch Meshes for Modeling Knitted Clothing with Yarn-level Detail
Identified the basic stitch types and how they fundamentally are stitched together, then reduces each stitch quantum to a cell. A lot of details about real-life knitting informs their modeling, although the computer can produce good looking but physically impossible stitches. To generate the model, there's an interactive UI where the user inputs info on the stitch patterns. The whole cloth model (e.g. a sweater) is sectioned into clickable faces for individual modification. Now, the mesh faces are relaxed, which is to curve around the body wearing it realistically, and the cells are constructed on each face, relaxing with them. To complete this, there is then the yarn-level relaxation, which makes each knit stand out like a real sweater. The relaxation converges around the wearer until the rate of change hits a threshold.
Comics, Texture and Scribbles
Digital Reconstruction of Half-toned Color Comics
Digitizes paper-printed comics by using algorithms to separate black ink from the colors which are screened dots in CMY. The black lines must be unscreened and are recovered as a binary file. Grids are used to approximate the dots. These elements are then vectorized as parametric models and quite slowly rendered in a highly compressed file. Because the black lines are separated and sharp, the comic panel can easily be layered for parallax viewing.
- Their method:
> (paper not avail yet)
Lighting Hair From The Inside: A Thermal Approach to Hair Reconstruction
Skinning
Elasticity-Inspired Deformers for Character Articulation
Control Deformables
Deformable Objects Alive!
Uses rest poses to direct object motion. Deformable objects are actively and autonomously animated. It's not the usual passive case where something like jelly would be constrained to flop through a crack in a certain way, but in which the jelly would hop and jump.
Fast Simulation of Skeleton-driven Deformable Body Characters
Sketching
Three-dimensional Proxies for Hand-drawn Characters
Noise and Texture
Structure-aware Synthesis for Predictive Woven Fabric Appearance
Particles
Ghost SPH for Animating Water
Versatile Rigid-fluid Coupling for Incompressile SPH
Found a nice intro to SPH. I'll probably have to read a lot more simulation papers, not just SPH, to understand the significance, and the 'this' in general. Actually, this applies for all the papers. For Ghost SPH, you basically have namesake particles which are invisibly applying thousands of little springs to the real water particles to keep them in a certain form.
Collisions
Efficient Geometrically Exact Continuous Collision Detection
Mathematics and Physics of Light
Physically-based Simulation of Rainbows
All about images
What Makes Paris Look like Paris?
Mesh Based Fluids
Langrangian Vortex Sheets for Animating Fluids
Discrete Viscous Sheets
-- Discrete Viscous Threads (2010)
Reading the papers, it occurred to me that maybe animators today subconsciously limit their imagination because of present day tools. While there are mind numbing breakthroughs in every movie, I think that just as if you limited an artist to charcoal he wouldn't think in color, similarly an animator would have a limited mindset. That's why it would still be exciting to see animation 10 years from now, when a new generation of animators have grown up on a new wave of production technology.
Here's the list. It is a fairly broad variety:
Cloth
Stitch Meshes for Modeling Knitted Clothing with Yarn-level Detail
Identified the basic stitch types and how they fundamentally are stitched together, then reduces each stitch quantum to a cell. A lot of details about real-life knitting informs their modeling, although the computer can produce good looking but physically impossible stitches. To generate the model, there's an interactive UI where the user inputs info on the stitch patterns. The whole cloth model (e.g. a sweater) is sectioned into clickable faces for individual modification. Now, the mesh faces are relaxed, which is to curve around the body wearing it realistically, and the cells are constructed on each face, relaxing with them. To complete this, there is then the yarn-level relaxation, which makes each knit stand out like a real sweater. The relaxation converges around the wearer until the rate of change hits a threshold.
Comics, Texture and Scribbles
Digital Reconstruction of Half-toned Color Comics
Digitizes paper-printed comics by using algorithms to separate black ink from the colors which are screened dots in CMY. The black lines must be unscreened and are recovered as a binary file. Grids are used to approximate the dots. These elements are then vectorized as parametric models and quite slowly rendered in a highly compressed file. Because the black lines are separated and sharp, the comic panel can easily be layered for parallax viewing.
- Their method:
- Estimate the primaries for the Neugebauer trilinear model and compute a CMY color separation by inverting the Neugebauer equation.
- Detect the dot grid for each of the CMY channels.
- Use optimization to jointly recover a binary black ink mask and the individual dot shapes.
- Vectorize the black ink mask and filter the color channels.
> (paper not avail yet)
Lighting Hair From The Inside: A Thermal Approach to Hair Reconstruction
Skinning
Elasticity-Inspired Deformers for Character Articulation
Control Deformables
Deformable Objects Alive!
Uses rest poses to direct object motion. Deformable objects are actively and autonomously animated. It's not the usual passive case where something like jelly would be constrained to flop through a crack in a certain way, but in which the jelly would hop and jump.
Fast Simulation of Skeleton-driven Deformable Body Characters
Sketching
Three-dimensional Proxies for Hand-drawn Characters
Noise and Texture
Structure-aware Synthesis for Predictive Woven Fabric Appearance
Particles
Ghost SPH for Animating Water
Versatile Rigid-fluid Coupling for Incompressile SPH
Found a nice intro to SPH. I'll probably have to read a lot more simulation papers, not just SPH, to understand the significance, and the 'this' in general. Actually, this applies for all the papers. For Ghost SPH, you basically have namesake particles which are invisibly applying thousands of little springs to the real water particles to keep them in a certain form.
Collisions
Efficient Geometrically Exact Continuous Collision Detection
Mathematics and Physics of Light
Physically-based Simulation of Rainbows
All about images
What Makes Paris Look like Paris?
Mesh Based Fluids
Langrangian Vortex Sheets for Animating Fluids
Discrete Viscous Sheets
-- Discrete Viscous Threads (2010)
Labels:
graphics
Tuesday, October 2, 2012
Simulated Annealing prototype
One of the grad students here gave me his Siggraph 11 paper on optimizing automated arrangement of furniture models in real world settings, and told me to write a version of simulated annealing however I wanted. At the time, I was more comfortable with Python, so I did that.
What I had was a red triangle, and a blue triangle, that were randomly placed on a plane in a random direction. They were supposed to use Metropolis Hastings simulated annealing to point to each other and have a minimum distance (i.e. 0) between each other. The thing about simulated annealing is that instead of falling into a local success solution, probabilities are factored into the algorithm so that the triangles can move to worse positions at the moment, but later on find a global optimum.
Here's how it would look if the program ran:
What I had was a red triangle, and a blue triangle, that were randomly placed on a plane in a random direction. They were supposed to use Metropolis Hastings simulated annealing to point to each other and have a minimum distance (i.e. 0) between each other. The thing about simulated annealing is that instead of falling into a local success solution, probabilities are factored into the algorithm so that the triangles can move to worse positions at the moment, but later on find a global optimum.
Here's how it would look if the program ran:
![]() |
before SA: random position and direction |
![]() |
after SA: minimum distance apart; faces each other |
Labels:
graphics
Subscribe to:
Posts (Atom)