Showing posts with label Python. Show all posts
Showing posts with label Python. Show all posts

Saturday, 21 June 2014

Playing in a Dome

I love going out and creating spherical panoramas of the places I visit, its a fantastic way to capture some amazing sights. But after I've created them I'm left with the same ways to visualize them, either using some sort of interactive viewer or a flat static view which sort of removes the immersive 360° experience. Well luckily for me I've recently had the offer of a third way of viewing my work, in a 180° dome.

Last October (2013) I visited an Art event in Birmingham called Illuminate and as the name suggests it was all to do with light. The bit that I was interested in experiencing was the 360° Panoramic Cinema, not a full dome projection but a cylindrical slice all around the walls. It was here I met Toby Norman-Wright and Mario Di Maggio and got discussing my panoramas with them. I was told by Mario about another event he runs in Birmingham on a regular basis called Dome Club and I was invited to bring along some of my content to be shown.

Now we fast forward to today. After some initial experiments with preparing content for a dome, only showing an 180° view meant that you would only experience the world from the horizon up (or maybe slightly tilted forward). I started thinking about showing more, seeing a bit of the floor too. This presented it's own problem. The projection that the dome required was circular fisheye so expanding the view to 250° was not a problem. What was a problem is that the view would be distorted making buildings tower in above you and to correct this I would need to re-map my images. After a bit of scribbling ideas on paper, some Maths and a Python script to do the work my images were re-mapped and ready for projection.

I visited Dome Club being held at the Q Club Complex in Birmingham on Friday 13th June and there I was able to experience my work being projected in a 7 meter dome. I had given Mario both original and re-mapped 250° views so that comparisons could be made to judge if the re-mapping was a success and in my eyes it was. Vertical edges now appeared vertical (again) and the ceiling didn't seem so distant. It's truly a great way to re-live the immersive experience of the original panoramic image.

My static panoramas wasn't the only content that I took to Dome Club, I also took Giroptic's demo panoramic video from Times Square in New York shot on their amazing 360Cam. I converted the original 360° x 180° equirectangular projection to a re-mapped 250° fisheye. This was a bit of an experiment for me as I hadn't worked with panoramic video before and the 360Cam is still only a kickstarter project (over $1.1 million funded project at the time of writing!). The immersive experience was outstanding and from such a small handheld device. It really did show what will be possible for content creation that is then shared with a mass audience. Truly interesting times for spherical panoramic video and an area that I want to carry on experimenting with.

For anyone interested in seeing what a re-mapped 250° fisheye video looks like you can see the Time Square demo video over on my YouTube channel here http://youtu.be/VUZKKxP1DYA.

Friday, 25 April 2014

Code Club, between terms

07:27 Posted by Unknown , , No comments
Well one term finished and a new one not too far off at Malvern Wells Primary school. Looking back it's amazing to think what the children have covered at Code Club since the beginning of the year and how well they picked everything up. Not all the children learn at the same speed, but with a few nudges in the right direction everyone gets there. The Autumn term was all Scratch, and what a fantastic place to start. We covered everything from a cat chasing a mouse to fish chomping and racing across a desert to a simple drawing package. The children took everything in their stride, like giant knowledge sponges.

For the spring term, we changed direction a bit, looking at HTML & CSS. Gone was the wonderful drag and drop interface, replaced with a keyboard and commands to type. Would this put the children off? Would it not be as fun any more? I needn't have worried, they picked everything up at the same break neck speed and were soon coding HTML tags and CSS styles without an issue.

First they created their own "Lost Cat" web page, that definitely weren't identical pages. Each child brought their own creative skills to the task, interpreting it in their own way. For some colours and styles were important, expanding on what they had learnt while others brought their own flare to the text, expanding on their story of the lost cat. A real moment of achievement came when they found out that the pages they had created would be uploaded to the Internet using TeePee.io for the world to see. For such a small task the ability to have a URL they could take home to show their parents what they had created was a real reward for the children.

After this we moved onto hiding Ninjas around a town using positional CSS. This time there was different units of measure to get to grips with and after a bit of trial and error the concepts were grasped. Some of the children repeatedly tweaked their Ninjas positions to make sure that the smallest piece of hand or foot couldn't be seen while others placed all theirs in the same place resulting in a squash of Shinobis behind a skip!

Finally they got to use their creative skills to build their own website on any subject they wanted. Some took a topic areas that they had already covered in class while others embedded YouTube videos that they wanted to share. It really showed what they had learnt in such a short time.

I'm now looking forward to the Summer term and teaching the children Python, but this required a bit more planning. For the first term the school already had Scratch installed and for the second term we used notepad and the Chrome browser, but Python was something different. Luckily the school has a technician on rota and I got my request in for Python to be installed early enough so that by the end of the Spring term we were ready to go. It'll be an exciting time getting the children to put together what they have learnt in the first two terms. From Scratch they will be able to take all the programming concepts, loops, conditions and logic flow and combine that with the art of typing syntax (and making sure its right) that they learnt with HTML & CSS. Maybe even for the final lesson I might let them have play with Python and Minecraft on my Raspberry Pi, but this will be a surprise, so keep it under your hat.