I'm currently an undergrad in computer science and I'll be entering my final year next year. Augmented reality is something I find to be a really interesting topic, but I have no idea where to start learning about it.
Where do you start learning about this topic and what libraries are available?
The Pragmatic Programmer AR book is pretty good, lots of code samples and exercises that get you involved, instead of just reading about it. It is a little dated, but it should be a pretty good starting point.
I have spent a bit of time looking for AR code for the iPhone. If you want to do AR and locations then download this project
http://github.com/adascent/iPhone-AR-Toolkit
It based on ARKit mentioned above but improved and actually compiles. The orginal AR kit does not support device rotation. Someone else added it but there actual code never worked and so a 3rd person took it and fixed it.
I am currently added more features to this code.
Ben Newhouse, the man behind Yelp's augmented reality Monocle feature, gave a talk at Stanford about the process he went through when making it. It is available for free on iTunes U, at this location: http://deimos3.apple.com/WebObjects/Core.woa/Feed/itunes.stanford.edu.3124430053.03124430055
(The link won't work in Chrome, but it does in Safari. If it doesn't work, just search "Yelp Monocle" in iTune's search box, and download the iTunes U lecture.)
The lecture is about programming for the iPhone, but most of it is translatable to other areas. It is packed with valuable information, and has proved extremely useful for me in seeing all the components of what i want to make.
Being a quite popular buzz word, augmented reality can be build with some distinct algorithms which can be learnt separately. Usually it covers:
To dive into this subject I would recommend this steps:
Take a look at this augmented reality framework comparison table to select a suitable AR framework for your work.
qualcomm's vuforia AR api is a great place to start since it is free and it has all the AR features we can think of.
And also this book gave me a huge help to start building AR apps. Developing AR Games for iOS and Android by Dominic Cushnan, Hassan EL Habbak
If you're comfortable with Objective-C, downloading and playing with ARKit would be great place to start. It's based on magnetometer/accelerometer readings rather than pattern recognition.
If pattern recognition is what you're interested in, then start with artoolkit instead. But that library is a bit more intense, naturally.