Augmented Reality Triggers

It’s small potatoes in the big scheme of things, but I’m really hopeful for the mural project to come to fruition.

Here are a few screen grabs from my trigger images, which represent just small sections of the full size mural.

20130108-083645.jpg

20130108-083705.jpg

20130108-083716.jpg

Posted in General | Tagged | Leave a comment

Building Murals for the North First Street Association in Champaign

I’m involved in a class project with a wonderful team of students in the Art & Design program here at the University of Illinois. The task is to pitch a mural to go up in the historic area of downtown Champaign, at a barbershop located on North First Street.

Recently, my class had a chance to review our creations using the large scale projectors at the National Center for Supercomputing Applications (NCSA) on campus.

We are working on a borne digital mural, meaning it is all designed with Photoshop and Illustrator, taking historical imagery and photographs. There is no guarantee that we will win or be able to get funds for building the mural, but it has been a very rewarding process to participate in this.

I am working on creating an Augmented Reality component to this, and will provide more photographs and updates as its the project continues.

For now, a group picture of my team, Ismeta (I’m so meta, even this acronym).

Standing in front of projector at NCSA

Pictured from left to right -> Acton (me), Hugh Sato, Danielle Sheppard, and Pat McPherson.

Posted in General | Leave a comment

Deep Zoom Projects

I’ve recently worked on two projects involving “Deep Zoom”.

The idea of the “Deep Zoom” is to take an incredibly large image and then tile it much like Google Maps or Open Layers does with maps. As the viewer zooms into the image, more things become revealed, whether its a finer detail or displaying the imagery in a different way.

Microsoft has done a lot of work in this field.

As well as Google with its art project.

While I’m just looking into this for the first time, I’ve used the concept for embedding a one page newspaper graphic into a website:

I got a lot of practice with this idea from a recent class project.

While this isn’t a “Deep Zoom” in its purest sense, we wanted to explore a more interactive side with story telling. In this case, everything is built using HTML 5 in combination with OpenLayers:

The secret to the sauce for these projects is using a freeware program called MapTiler, more information available here.

MapTiler has a lot of options, including the ability to overlay KML files, geo-encoded data, and to create OpenLayers and Google Maps. I found that OpenLayers is by far the easiest and least fussy, but not necessarily the best looking interface.

Just something about how smooth and elegant Google is always brings me back.

Getting these into a CMS website is easy: I just embed the generated html file into an iframe.

I find that OpenLayers doesn’t play well with mobile devices, so I’m hoping to continue playing with the Google Maps version until I’m comfortable with it.

One idea that intriques me is going into the tiled images and then creating animated GIFs. Though, that can be a lot of work and the type of story that would be useful for isn’t quite clear to me yet.

Posted in Blog, General | Leave a comment

Using Dropbox for Uploading to Web Servers

I’ve recently had success with using Dropbox for uploading content to a web server.

This is especially useful for situations where connecting to the web server through FTP or SSH isn’t possible for people who need to add content.

Dropbox also integrates nicely with file systems on Windows, Mac and Linux computers so that rather than looking and functioning like yet another PITA FTP program, users feel as they are moving a file from one part of their computer to another.

Its dead simple. That’s why I like it.

The web servers that I use run on some variation of Linux. I’ve had success with OS-X, though I haven’t tried with Windows. I don’t see why someone would use Windows for web serving it would be a problem to use Windows though I don’t know the details.

The challenge I encountered is in getting the permissions setup correctly because when a file is added to Dropbox, whichever user account it is associated with will have all of the folder access permissions changed. If the web server does not have permission to access the folder, then it won’t work.

Start by logging into your server command line and switch user to root with “su”.

In the /etc/passwd file, change the web server user to login with “/bin/bash”.

Look for this line:

apache:x:48:48:Apache:/var/www:/sbin/nologin

and change to:

apache:x:48:48:Apache:/var/www:/bin/bash

Now switch user to apache:

su apache

The reason I set this up with the apache user is because the home directory for apache is the root web serving directory at “/var/www”. Because anything added to Dropbox will inherit the user ownership, using the apache user will guarantee the files are accessible.

You’ll need to download the necessary file, install the Dropbox CLI daemon and link the accounts.

Following the instructions in this guide: http://www.dropboxwiki.com/Using_Dropbox_CLI

Make sure that your .htaccess file includes the option to allow Apache to follow symbolic links:

Options +FollowSymLinks

Now, navigate to your web directory and add a symbolic link to wherever files are stored. For example:

ln -s /var/www/Dropbox/Server db

After you’ve finished, exit the apache user to get back to root and reload the apache service:

service httpd reload

Now when a user uploads a file into the designated Dropbox folder (which is named “Server” in this walk-through), then it will automatically sync with the web server.

As the owner of the Dropbox, you will need to share with others so that they can access the folder from their Dropbox account. I’ve found this to be the case for both Personal and Team accounts.

One caveat is that by default, all files and folders added to the linked Dropbox account will show up on the server. You will need to use the dropbox.py script as the apache user to exclude any files and folders.

For example:

~/dropbox.py exclude Documents

To not have to constantly deal with this, I recommended creating as few root level folders as possible on the linked Dropbox account. Instead, keep one for Server and another folder for your other business.

Posted in Blog, General | Leave a comment