Tuesday, 10 June 2014

Narrative Clip - The good, the bad and the hacks

I got my Narrative Clip lifelogging camera a few days ago. I pre-ordered it way-back-when right after its successful kickstarter campaign as Memoto.
Image from: http://www.engadget.com/2013/11/10/narrative-clip-lapel-camera-final-version-hands-on/
It is a small wearable camera that takes a photo every 30 seconds or when you double tap on it. It has a bunch of sensors inside, including an accelerometer, magnetometer, GPS and light sensor. Here's a teardown of the hardware performed by Adafruit.

After having a good play with the clip, here's what I think. Overall, I am happy with my purchase but would advice against buying the clip unless you are OK with the bad points listed below or plan to use it for various hacks and projects.

The Good

  • The industrial design is very nice - It is light, compact, easy to attach to clothing and looks quite nice when worn.
  • The camera is of reasonable quality given the battery life, which is around 2 days
  • The non-camera sensors seem to function reasonably well, apart from the GPS (see "The Bad" below). 
  • As can be seen from the teardown video, it looks to be a well engineered piece of electronic hardware.

The Bad

  • The software, or lack there of. You can upload photos and sensor data to the cloud and view the photos in a mobile app. That's pretty much it. There is an attempt to group photos into "moments", show photos that you took using a double tap (or by accident...) and the cloud service does 90-degree auto rotation. That's it. No GPS data. Nothing else is implemented at the time of writing.
  • To reiterate, the software for the thing is horrible. There is no API, not even for viewing your cloud data via the web. There is no way to view and edit your data "offline". 
  • There is also no way to set parameters in the "firmware", such as the interval between snapshots. The device itself is not programmable at all.
  • It continues to take photos in very low light conditions, and often takes photos of the inside of my pocket.
  • It seems to ignore large accelerations and takes blurry photos because of this
  • Sometimes, it senses double taps when none occurred, and ignores them when I try to double tap. Overall, the double-tapping feature isn't very well implemented and leads to some blurry photos and shots of fingers. It is also quite hard to aim one's body at an object or scene of interest without a view finder.

Not Sure

  • Toilets and other places where one should be careful taking photos means that it is a bad idea to just forget about the device and use it for life logging. This is both a good and bad point about the device. I found it quite easy to forget that I have on me a camera that takes photos without any notifications.
  • The above is especially troubling given that the software is so limited and the only mode of useful operation is through a subscription-based cloud service. I really want access to edit and remove photos before uploading them to the cloud - this is currently not an option (but can be gotten around with the hacks below).
  • It takes many hours to upload a day's worth of photos due to the horrible state of Australian Internet. I assume this is also an issue for many people, but I also think it is a non-issue for many living in sane countries with good Internet infrastructure that don't operate using smoke signals and homing pigeons...

The Hacks

Given the limitations of the software, I have gone ahead and started working on some code to build an "offline narrative". The long term goal of this project is to make my own set of computer vision and sensor processing functions that enable useful lifelogging capabilities without the need for an Internet connection and cloud services.

Firstly, here's the code so far. It is some MATLAB that I cobbled together to test things out. It should run on Octave but I haven't tested it yet :)

The github page includes an extensive Readme that has a lot more information about the clip, including technical details such as how the accelerometer axes are arranged and how files are timestamped. 

The code currently operates on the cached folder of data that is created after the Narrative Uploader detects a clip connected via USB to a host PC. Note that if you disable Internet access for the uploader app, it will still cache the data from the clip and free up memory. This means you should be able to run the clip in offline mode indefinitely! (Assuming you don't update the firmware when Narrative decides to fix this...)

Sunday, 8 September 2013

Non-Fiction reads about the future

Did a bit of reading over the last few weeks. The books all happened to be about the future of humanity and the Internet as well as how technology and innovation can be brought to bear to help solve large problems.

First, I laboured through Jaron Lanier's "Who owns the future".
  • An OK read but very wordy an a bit lacking in detailed solutions. 
  • Core idea: Various "Siren Servers" (Google, Facebook, Finance etc) are collecting and selling user-generated data to make money without appropriate compensation. They also have unfair advantage due to technology and secrecy. This leads to squeezing of the middle class and other problems.
  • Solution: Pay generators of content instead of offering "free" services. Design new system architectures that promote proper attribution with economic tie-ins. I have no idea how this can be implemented or where one would start given current economic inertia and technical challenges.

Also finished "The Infinite Resource" +Ramez Naam.
  • Highly recommended for those looking for an uplifting read without actual proposals and solutions. 
  • Great balance of optimism and pragmatism about the future of the human race. 
  • The style of writing also makes it a quick read as it is quite concise.

Finally, I managed to squeeze in "Cypherpunks" by Julian Assange et al.

Not really worth it if you have seen the Youtube conversation as it is just a more detailed transcript + footnotes.
The Julian Assange Show: Cypherpunks Uncut (p.1)The Julian Assange Show: Cypherpunks Uncut (p.2)

Next up, I will be going through Kevin Mitnick's "Ghost in the Wires". Cant' wait!

Tuesday, 26 February 2013

We need more Engineers, Scientists and Mathematicians in Australian politics

Australians do not put enough value on mathematics, science and engineering. 

This observation comes from interacting with literally thousands university students as well as discussing my research with the general public in numerous settings. It comes from the fact that maths is not mandatory for high school graduates. It comes from the fact that many universities do not demand "specialist" mathematics (equivalent to "standard" maths in other countries) for a large range of course offerings that require maths. It comes from the fact that Australia's international ranking in primary school mathematics is poor and becoming poorer (e.g. TIMSS 2011 Chapter 1 PDF). It comes from the fact that very few students study science in the high school. Or just have a look at the ridiculously low entry requirements for those studying to become high school teachers.

I have been told by several high school teachers that they are not supposed to tell kids they are wrong unless it is accompanied by compliments; a ludicrous proposition if a child is to grow up to be a scientist, mathematician or engineer. Or just a rational person capable of critical thinking.

As a research scientist and engineer, all this makes me thoroughly melancholic. 

It is because of my math and science education (from a Hong Kong primary school and New Zealand high school) that allowed me to study Computer Systems Engineering at Monash on scholarship. This led to postgraduate research in a robotics lab where I developed smart robots and got the chance to travel widely to visit international research labs. I am now working on an implantable visual prosthesis that will provide bionic vision and novel Augmented Reality technologies; my work even got me some press coverage! Science and mathematics have allowed me live the Confucius quote: Find a job you love, and you will never work a day in your life.

I am sure there are a large mix of factors at play, especially traditional cultural values. I can go on and on about how society overvalues sports and undervalues education or how there is a massive cultural divide between Australia and many of its Asian neighbours in terms of how society values maths, science and engineering. 

I am also going to ignore the gender gap in math and science. It is a loaded topic and I feel that a rising tide lifts all boats; societal and government interest in math and science will help alleviate gender biases. I don't agree with fixed male-female ratios in classes; just feels a bit too 1984 for my liking.

What I will talk about, or at least begin to, is a inequity and bias that exists in the composition of our government that may have something to do with why our politicians seem unable to improve math and science education or fully appreciate the need for investment in an innovation culture to boost jobs in manufacturing and other suffering sectors. 

Note that I am not saying that this bias is a fault of anyone; I see it as a systemic fault that probably developed over time.

On a (somewhat obsessive) whim, I went and looked up the education background of the Senators in the Australian Senate. Details are available in a Google Spreadsheet.

Here are my findings for our 76 senators:

  • Half of the senate have an Arts or Law background (like our current PM Julia Gillard)
  • 22 senators had no formal tertiary education (very surprised by this)
  • Other well represented disciplines include Economics (11) and Education (7)
  • There are 9 senators that have a degrees with "science" in the title
    • These are generally social, biological, environmental or health science qualifications
  • As far as I know, only Bridget McKenzie has a "hard" science qualification (math background)
  • There are no engineers in our senate. (What gives?)
  • Nor are there any computer scientists, software developers (or physicists, neuroscientists, physiologists, biomedical scientists...)

Given my findings above, I am not surprised at the poor state of Australia's math and science education. I think it is difficult (may be impossible) for someone to advocate math and science in an earnest and effective way without significant personal experience with the rewards of studying and applying these disciplines. It is not just about jobs and catching up to our OECD and Asian neighbours; it is also about the joy of it all. 

It reminds me of the following video where US science advocate Neil Degrasse Tyson discusses the argumentative conflicts in the US government. Our government seems to suffer from similar problems despite having a few more economists. May be we need more engineers and scientists.

It seems the solution may be to get more mathematicians, scientists and engineers into the government or at least involved with the political system in some grass roots fashion. We also need more of them out in public talking to kids and young adults as they will be the ones that select political leaders in the future.

In subsequent blog posts, I plan to look into the qualifications of the Members of parliament as well as the reasons why engineers seem to stay clear of politics in Australia. My initial hypothesis is that a combination of  the nature of their tertiary education and the high paying jobs they land after graduation drives them away from political roles.

Assuming the Wikileaks party gets formally registered, I may also have a look at the party's position on 
on math and science. Early rumours suggests that the initial members include mathematicians and physicists. A welcome change to Australian politics!

Tuesday, 5 February 2013

Udacity CS344 Notes for Unit 1

Started Unit 1 of Udacity's Parallel Programming (using CUDA) course today. I will be updating the following GDoc with my notes and thoughts as I go through the course. What better way to spend a few hours than having a coffee while listening to programming lectures :)

LINK: Udacity CS344 Notes by Wai Ho Li

Sunday, 11 December 2011

We won Best Student Paper at ACRA 2011!

By "we", I mean my hard working students Winston and Nalika. Great work you two!
Winston Yii receiving the best student paper prize from ARAA president Rob Mahony 

Paper PDFVisual Localisation of a Robot with an external RGBD Sensor

ACRA 2011 photos are HERE (thanks to Dennis Lui from Monash Vision Group) and HERE (thanks to Michael Milford from QUT).

Wednesday, 7 December 2011

Getting ready for ACRA 2011

I am the Program Chair at the Australasian Robotics and Automation conference (ACRA), which starts on Wednesday the 7th of December. The Full Program is now online. Despite long hours of preparing for the conference with my co-chairs (Tom Drummond, Lindsay Kleeman and Andrew R. Russell), I am still energetically looking forward to the technical presentations.

I am co-author for 3 papers accepted for oral presentations at ACRA. Videos and paper PDFs below.

PDF: A lightweight approach to 6-DOF plane-based egomotion estimation using inverse depth 
Authors: Titus Jia Jie Tang, Wen Lik Dennis Lui and Wai Ho Li

PDF: Visual Localisation of a Robot with an external RGBD Sensor
Authors: Winston M. S. Yii, Nalika Damayanthi, Tom Drummond and Wai Ho Li

PDF: eBug - An Open Robotics Platform for Teaching and Research

Authors: Nicholas D'Ademo, Wen Lik Dennis Lui, Wai Ho Li, Y. Ahmet Sekercioglu and Tom Drummond

Tuesday, 1 November 2011

ISMAR 2011

Just got back from IEEE ISMAR 2011 in Basel, Switzerland where I presented and demonstrated Transformative Reality (TR). TR applies computer vision and robotic sensing in real time to optimise the usefulness of visual information presented through low resolution displays such as bionic vision from implanted visual prostheses.

More technical details available from the POSTER and PAPER (PDF). We also tested the system on ourselves. An example trial is shown in the video below

Photos courtesy of ISMAR website