Project Tango and Visual-Inertial Localization

Project Tango and Visual-Inertial Localization

This project enti­tled “Large-Scale, Real-Time, Visu­al-Iner­tial Local­iza­tion” is inter­est­ing, using Google’s exper­i­men­tal ‘Tan­go’ hard­ware to improve real-time track­ing of loca­tion and position.

The hard­ware is a tablet com­put­er with a motion track­ing cam­era, a 4 megapix­el 2µp pix­el cam­era, inte­grat­ed depth sens­ing and a high-per­for­mance proces­sor. This equip­ment aids in tasks like scan­ning rooms. A lim­it­ed num­ber of kits were pro­duced and giv­en or sold to pro­fes­sion­al devel­op­ers with the intent of mak­ing tech­no­log­i­cal developments.

One day we may see more accu­rate and inter­est­ing aug­ment­ed real­i­ty. I’ve often thought over­lay­ing infor­ma­tion onto our cur­rent real­i­ty would be inter­est­ing. Walk­ing down a street and see­ing for-sale signs could be inter­est­ing. It may just being over­loaded in adver­tis­ing, mak­ing a vir­tu­al eye­sore though.

Source:

Get Out of My Lab: Large-scale, Real-Time Visu­al-Iner­tial Localization
Simon Lynen, Torsten Sat­tler, Michael Bosse, Joel Hesch, Marc Polle­feys and Roland Siegwart.
Autonomous Sys­tems Lab, ETH Zurich
Com­put­er Vision and Geom­e­try Group, Depart­ment of Com­put­er Sci­ence, ETH Zurich
http://www.roboticsproceedings.org/rss11/p37.pdf

Using a Cellular/Mobile Phone Network to Send Data with Arduino/Embedded

Using a Cellular/Mobile Phone Network to Send Data with Arduino/Embedded

Today I used an Arduino repro­gram­ma­ble elec­tron­ics board and a GSM/GPRS modem to send data to the Inter­net. This will be use­ful for the sen­sors I intend to build.

You can see a video of it oper­at­ing below. One win­dow shows the out­put from the ser­i­al inter­face as it makes a request to my web serv­er and out­puts the response, and the oth­er win­dow dis­plays the access logs on my web server.

I used a soft­ware UART (par­al­lel and ser­i­al data con­vert­er), as using the Arduino’s built-in ser­i­al inter­face caused con­flicts. Learn­ing to use a soft­ware UART is going to be very use­ful for the next step in the project.

I did con­sid­er mak­ing a Cat Facts for Arduino, but I resist­ed the distraction.

I did­n’t have any issues with pow­er spikes caus­ing a reset (the GSM board uses a lot of pow­er) as this is a ver­sion 2 board with soft start circuitry:

Soft Start Circuitry
Soft Start Cir­cuit­ry (Source)

I also used AT codes to send SMS text mes­sages. A full list of AT codes are avail­able here, and I used these:

Send a text

Set to human read­able text mode:
AT+CMGF=1

Set phone number:
AT+CMGS=“447944581307”

Enter the message

Send hex 1A to escape message.

List texts

AT+CMGL

Read a text

AT+CMGR=<index> (index­es start at 1)

Delete a text

AT+CMGD=<index>

 

The only stum­bling point I had was when the GSM modem was set to a dif­fer­ent baud rate than my soft­ware ser­i­al inter­face. To change this, I sent the AT com­mand AT+IPR=9600 to recon­fig­ure the modem.

I learnt that AT com­mands are also used to send and receive via TCP/UDP. This made it much more straight­for­ward than some kind of low lev­el sys­tem I had imag­ined. All that is required from the Arduino is to send AT com­mands (e.g. AT+CIPSEND=) and lis­ten for incom­ing responses.

Explanation for non-techies:

I made an elec­tron­ic cir­cuit that can send infor­ma­tion to the Inter­net. This will be use­ful for mak­ing a sen­sor e.g. a tem­per­a­ture sen­sor for an office that is acces­si­ble on any computer/smartphone.

Smart scanning technology detects early signs of potholes

Smart scanning technology detects early signs of potholes

Smart scanning technology detects early signs of potholesInter­est­ing work by a team led by Not­ting­ham Trent Uni­ver­si­ty on mak­ing a mobile scan­ner that can detect ear­ly signs of pot­holes. It uses con­ven­tion­al cam­eras, 3D scan­ners and com­put­er vision to detect ‘rav­el­ling’. Mov­ing this around at traf­fic speed mount­ed to a vehi­cle, and com­bin­ing it with GPS and a suit­able log­ging sys­tem, it could be used to improve road conditions.

Researchers are devel­op­ing smart scan­ning tech­nol­o­gy using exist­ing cam­eras to detect the ear­ly signs of pot­holes and deter­mine their severity.

The tech­nol­o­gy, devel­oped by a team led by Not­ting­ham Trent Uni­ver­si­ty research fel­low Dr Sen­than Math­a­van, scans roads for rav­el­ling — the loss of aggre­gates from the asphalt which leads to pot­holes and cracks.

Ravelling - an early indication of potholes
Rav­el­ling — an ear­ly indi­ca­tion of pot­holes — Source

Com­bined with 2D and 3D scan­ners on a pave­ment mon­i­tor­ing vehi­cle, a com­put­er vision algo­rithm can exam­ine the road with accu­ra­cy at traf­fic speed dur­ing day or night.

The sys­tem works by detect­ing dif­fer­ent tex­tures of the road to iden­ti­fy rav­el­ling and dis­tin­guish­es it from shad­ows and blem­ish­es such as tire marks, oil spills and recent pot­hole repairs.

“It’s imper­a­tive for author­i­ties across the world to be able to mon­i­tor road con­di­tions effi­cient­ly and safe­ly,” said Dr Math­a­van, a research fel­low of the School of Archi­tec­ture, Design and the Built Environment.

“For the first time, aca­d­e­m­ic research has addressed the issue of detect­ing rav­el­ling in an auto­mat­ed way, which has led to the devel­op­ment of this nov­el soft­ware which can be used across the industry.”

The research was pub­lished today in Trans­porta­tion Research Record, a lead­ing aca­d­e­m­ic jour­nal for trans­porta­tion infra­struc­ture research. It also involves Dr Mujib Rah­man of Brunel Uni­ver­si­ty, Mar­tyn Stonecliffe-Jones of Dynat­est UK Ltd, and Dr Khur­ram Kamal of the Nation­al Uni­ver­si­ty of Sci­ences and Tech­nol­o­gy in Pakistan.

Dur­ing the research, the team found that the tech­nol­o­gy detect­ed road sur­faces cor­rect­ly in all 900 images test­ed. It took approx­i­mate­ly 0.65 sec­onds to 3D process the rav­el­ling mea­sure­ments, but it is believed that this could be reduced further.

potholeDr Rah­man added: “Pot­holes, in their worst poten­tial form, can cre­ate dan­ger­ous dri­ving con­di­tions and cause cost­ly dam­age to vehicles.

“What this tech­nol­o­gy allows us to do is cap­ture bet­ter qual­i­ty infor­ma­tion on road con­di­tions, with­out dis­rupt­ing the flow of traf­fic or incur­ring unnec­es­sary costs.

“This could be a sig­nif­i­cant step for­ward in the way that pot­holes are man­aged, help­ing improve the time­li­ness and effi­cien­cy of repairs.”

Source: http://www.ntu.ac.uk/apps/news/169006 – 6/Smart_scanning_technology_detects_early_signs_of_potholes.aspx

Arduino for Atmel Studio

Arduino for Atmel Studio

Atmel Stu­dio now has an exten­sion designed as a sim­ple alter­na­tive to the Arduino IDE.

The Arduino IDE is rel­a­tive­ly sim­ple. It is great to get start­ed with AVR pro­gram­ming, and has some use­ful exam­ples to get you start­ed, but lacks many of the fea­tures that expe­ri­enced pro­gram­mers call for like detailed com­pil­er warn­ings, debug­ging capa­bil­i­ties, auto-com­ple­tion and unit testing.

Arduino IDE
Arduino IDE

Pro­gram­ming for AVR at a low­er lev­el in Atmel Stu­dio can also have per­for­mance improve­ments. Shift­ing bits rather than using Arduino IDE’s ‘dig­i­tal­write’ can have a 10x speed improve­ment for example.

Atmel Stu­dio sup­ports a wider range of AVR microchips. This can be use­ful if you aim to pro­gram one of Atmel’s huge range of microchips. I have a ATtiny13A, which uses con­sid­er­ably less pow­er than the ATMega328 in my Arduino board (190 µA in active mode, and 24 µA vs. 0.2 mA in active mode, 0.1 µA in pow­er-down mode, and 0.75 µA in pow­er-save mode).

Atmel Studio

So if you feel you are out­grow­ing the Arduino IDE, give Atmel Stu­dio a try. You may find this tuto­r­i­al use­ful: Using Atmel Stu­dio 6 with Arduino projects, or How to Set­up Atmel Stu­dio for Arduino Devel­op­ment.

Sim­plic­i­ty can be more impor­tant though, and the Arduino IDE may be more suit­able for your appli­ca­tion. After all, projects are gen­er­al­ly rel­a­tive­ly sim­ple when you have less than 16 KB of mem­o­ry to play with. I expect I will con­tin­ue using the Arduino IDE pri­mar­i­ly, and Atmel Stu­dio for any par­tic­u­lar­ly chal­leng­ing projects.

Simple explanation for non-techies

Arduino refers to a few types of tiny elec­tron­ic board with a repro­gram­ma­ble microchip. Pro­grams can be sent from a com­put­er to this microchip to per­form what­ev­er task is required.

A fun exam­ple is Leah Buech­ley’s Turn Sig­nal Bik­ing Jack­et project, shown in the video below:

Software Defined Radio (SDR) and Field-Programmable Gate Arrays (FPGA) — A Free Radio Scanner

Software Defined Radio (SDR) and Field-Programmable Gate Arrays (FPGA) — A Free Radio Scanner

When I was grow­ing up, one of my favourite birth­day presents was a Uniden UBC3000XLT radio scan­ner. I enjoyed find­ing and lis­ten­ing to var­i­ous radio trans­mis­sions, and I had some suc­cess decod­ing data trans­mis­sions and morse code using my PC and Sound Blaster soundcard.

Uniden UBC-3000XLT Radio Scanner
Uniden UBC-3000XLT Radio Scanner

I was inter­est­ed to read about a tech­nique called Soft­ware Defined Radio (SDR), which can sam­ple the entire short­wave spec­trum, and use the pro­cess­ing pow­er of a com­put­er to vir­tu­al­ly ‘tune’ in to transmissions.

A home-built SDR board oper­at­ing at the Uni­ver­si­ty of Twente in the Nether­lands (pic­tured below) and a receiv­ing ele­ment around 5cm x 10cm is capa­ble of receiv­ing a fre­quen­cy range of 0 — 29.160 MHz.

It uses a Spar­tan XC3S500E Field-Pro­gram­ma­ble Gate Array. FPGAs can be pro­grammed using a hard­ware descrip­tion lan­guage, and arrays of pro­gram­ma­ble log­ic blocks which can be vir­tu­al­ly inter-wired. The most impor­tant advan­tage over a micro­con­troller like a Atmel/Arduino, is these oper­a­tions can hap­pen in par­al­lel, which is crit­i­cal to cre­at­ing a soft­ware defined radio, as a typ­i­cal AVR micro­proces­sor sim­ply does­n’t have the nec­es­sary clock speed. The sam­ple rate must be at least twice the max­i­mum fre­quen­cy of the sig­nal (Nyquist theorem).

PA3FWM Software Defined Radio
Soft­ware Defined Radio at the Uni­ver­si­ty of Twente

Tak­ing this a step fur­ther, Soft­ware Defined Radio can allow mul­ti­ple users to share the same receiv­er. At time of writ­ing, 184 users are lis­ten­ing to dif­fer­ent fre­quen­cies using the receiv­er at the University.

You can lis­ten for your­self at the Wide-band Web­S­DR at Uni­ver­si­ty of Twente. It’s essen­tial­ly a free radio scan­ner any­one can access for free. You might enjoy stum­bling upon a vari­ety of trans­mis­sions from all over the world, and you may have suc­cess using tools like Sor­cer­er to decode data trans­mis­sions, weath­er fax trans­mis­sions, and morse code.

With the ever-con­tin­u­ing advances in data stor­age capac­i­ties and scal­able clouds, one day it may be a triv­ial mat­ter to archive the entire radio fre­quen­cy spectrum.

Vacation with Autographer

Vacation with Autographer

I was lucky enough to take an Auto­g­ra­ph­er device on vaca­tion to the Unit­ed States this year.

This piece of wear­able tech­nol­o­gy is designed to be an ‘auto­mat­ic pho­tog­ra­ph­er,’ doc­u­ment­ing your life with­out inter­rupt­ing it.Autographer digital camera

Auto­g­ra­ph­er is a small wear­able cam­era, that uses five sen­sors to deter­mine opti­mal moments to take pho­tographs. The sen­sors include a three axis accelerom­e­ter, com­pass, light sen­sor, heat sen­sor and GPS.

A few years ago I con­struct­ed a device using a keyring dig­i­tal cam­era and an Atmel AtTiny chip (essen­tial­ly a tiny, low pow­er Arudi­no). The idea was to take a pho­to­graph at set inter­vals, in order to doc­u­ment a day’s activ­i­ties. Pow­er and stor­age require­ments at the time meant it was­n’t feasible.

I found my Auto­g­ra­ph­er cam­era last­ed most of a day with a full charge. The 8GB stor­age last­ed approx­i­mate­ly three weeks.

It was a great talk­ing point when meet­ing new peo­ple. And it is great to have mem­o­ries doc­u­ment­ed. I have found it ‘reminds you to remem­ber moments’ when look­ing through images. I believe back in the days of Sense­Cam, a tar­get for the tech­nol­o­gy were patients with mem­o­ry loss.

The soft­ware sup­plied can cre­ate short time­lapse videos, and com­bine it with music. I made a quick video of a day at the beach, and won Auto­g­ra­pher’s pic­ture of the week, and received a t‑shirt.

Here is the video:

The low­er cir­cu­lar part of the cam­era is a lens cap. When closed, it shows a bright yel­low area. I found myself clos­ing the lens cap dur­ing moments requir­ing pri­va­cy. This removed any doubt that per­haps the device was still operating:

I would high­ly rec­om­mend this cam­era for any­one who would like a record of their dai­ly activ­i­ties, per­haps on a spe­cial vaca­tion. I have want­ed to be able to record in this fash­ion for years, and this device func­tioned admirably.

You can find out more about this device at the Auto­g­ra­ph­er web site