Friday, December 20, 2013

URL- and Text-suggestion & correction using n-grams (Fuzzy Text Search)

by Hasan Karagülmez

Download:

First things first, the code accompanying this article is hosted on Github here:
https://github.com/HasanKaragulmez/FuzzyTextSearch

For now, it's created with Visual Studio 2012, targeting .NET 4.0, though .NET 3.5 (which is the .NET 2.0 CLR) should also work.

You can download pre-build assemblies of the code that's used in this article from my Google Drive. It's ready to run, so you can see what it does first-hand.
Important: In Windows, after you've downloaded the zip, first right-click on it, choose Properties, and choose "Unblock" in the lower section of the properties window.


The below article describes what the code does, and how you can use it.


Why would you use this?


Well, the use-case for this program is trying to help users in case of a 404-page. Often times, you'd just get a sterile 404-page, which basically tells you that you're lost, 
and you should take a look at some enormous sitemap (yay...) or use the search-functionality which hopefully does contain what you're looking for.

But the reason that we got on the 404-page in the first place is that we've entered an URL which does not exist. 
So, why don't we try a bit harder and try and help the user and give a suggestion to the page which they might have meant?

We do have some input for this, namely the URL that caused us to come to the 404-page in the first place.

Wikipedia tries to do something like this on their 404 page, try this non-existing page: http://en.wikipedia.org/hasankaragulmez




You´ll get redirected to a page where you can create the page (I guess that means it's a non-existing page, probably not what users meant).

Google also has something which tries to do this, using a 404-widget, you can check that out here: https://support.google.com/webmasters/answer/136085?hl=en
It does come with some caveats, but it does show that there could be a valid use-case here.


Also, a benefit of doing this ourselves is that we can work on this offline (handy for developing websites) and that we can exert influence on the results.

Note that, even though this use-case uses fuzzy-text matching for url-matching, the referenced program will actually work for plain text as well. In fact, a demo-project which does both is included in the Github-repository: https://github.com/HasanKaragulmez/FuzzyTextSearch


Interested? Let's see how we can implement such a system using fuzzy-text searching.




The what?

Fuzzy Text Search kinda sounds like Fuzzy Logic, but it actually falls more in the line of "Approximate Text Matching".

I think the Wikipedia-article describes this pretty well, check it out here: http://en.wikipedia.org/wiki/Approximate_string_matching


So what are n-grams? N-grams simply are a variation of fuzzy-text-search, other famous ones are calculating the levensthein distance and its variations.
A very spiffy way of doing fuzzy-text searching is by using a Levensthein Automaton, but it doesn't seem that easy to implement :)


What is easy to understand and implement is using n-grams. Basically n-grams split up a piece of text (a "string") into partitions, and then tries and do text-matching against a dictionary.

If you really want to know how n-grams work, and why wouldn't you, take a look at the n-gram Wikipedia article. It explains it actually pretty well.

What is handy to know, is that we call it "bigrams" where n=2, and "trigrams" where n=3.

Btw, the code referenced in this article is just a variation of an n-gram implementation, but uses several optimizations to speed up the process, even making use of multi-core processors. Also, it returns a matching-percentage which you can use as a metric. 
For example, if you've got a 90% percent match, you might want to redirect to an url. Or in case of text-matching, go ahead and auto-correct words.

In case you've missed it, you can view and the code (in C#) from GitHib here:  https://github.com/HasanKaragulmez/FuzzyTextSearch



Using plugins for maximum flexablility


Whilst the use-case initially was to create something that can handle URL-suggestions, it would be great if it could handle plain old regular text as well, wouldn't it?
N-grams certainly aren't inheritly couple to URL's, so the program that's created shouldn't either.

We do want to have influence on *WHAT* we want to use for doing our fuzzy-text search, so that hints towards a plugin-system, right?

If we would do this, all that the user of this program would have to do is to create a small plugin which adheres to some specified interfaces. This makes sure that the plugin implements code to supply the n-gram engine with the data it is supposed to use.

If we have n-gram-engine, the interfaces, and the user-supplied data-providing plugin, we have effectively decoupled our data-gathering and our fuzzy-text-search-engine.
That means that we're so flexable now, that we can work against any data-source - we don't put any constraints on that. 


Why is that handy?
Well, it means that we're not coupled to any specific system. For example, say that you want to provide data based on published pages in your CMS? Sure, make a plugin which does that.
Want to use a plain-text file? Sure, go ahead. 
Want to use morse-code smoke-signals read out by a laser as a data-source? Uhm... not sure why you would do that, but be my guest, write a plugin :)

So, basically, we could create something like this:




Actually, this is exactly the principle what the code in the Github library uses, see how there are four components?






Note that the *ONLY* thing you have to do is to create a plugin to supply data. 

Thus, the complexity of the plugin-code entirely depends on you.


The Github-code is a console-application that consumes the FuzzyTextSearch-assembly, and includes two sample plugins.

One which reads from a Sitemap.xml, which is actually the sitemap.xml of http://wired.co.uk which contains a staggering 17.500 (!!!) urls.
Nonetheless, we can still perform suggestions in milliseconds - about 20ms on my quad-core i7 with hyperthreading using bigrams, about 7ms using trigrams.



If your site has got less than 17.500 urls (which is most of you I reckon), results will be returned even faster. 
Another sample I've got, based on a sitemap of 1500 url's, returns results in about 3milliseonds.


The other, which works against a text file which contains the text-contents of the Wikipedia-article about DNA and creates a dictionary of all the words in that article. Afterall, there's quite a chance that you'll mistype "Deoxyribonucleic" or "phosphodiester". I know I would :)





If you would take this line further, you could make something that indexes the textual contents of your site, build a dictionary off of that and actually make corrections based on all the site-content.
That could be handy for example when people mistype things into a search box. That would be pretty cool, wouldn't it?

Note also how at runtime the used plugin is switched, without reloading, and without instantiating a new FuzzyTextSearch-class.

Both plugins are actually in the same assembly, called Acme.MySiteItems, to indicate that it's YOUR assembly which should perform this. 


Nonetheless, the next blog will go into more detail about how to create a plugin.

Feel free to look at the code, use it, write a plugin for your own use-case. If you've got any questions, please don't hesitate to fire away.

Feedback and constructive criticism is also always appreciated :)

Wednesday, November 20, 2013

Lens Turbo impressions with Canon FD 50mm f1.4 and FD 35mm f2 on Sony NEX

by Hasan Karagülmez



Mitakon Lens Turbo - Canon FD 50mm 1.4 - Sony NEX-6


This turned out to be pretty lengthy blogpost, so here's an overview of what's included for your convenience:

  1. Introduction
  2. So... what does it look like?
  3. Why the Canon FD-mount version?
  4. Lens Turbo + Canon FD 50mm f1.4 sample pictures
  5. So, what about the Canon FD 35mm f2
  6. Compared: Lens Turbo + FD 50mm 1.4 vs EF 50mm 1.8
  7. Compared: Lens Turbo + FD 35mm f2 vs Sony 35mm 1.8 OSS (SEL35F18)
  8. Conclusion


Introduction

Hey all, in this blog post I'm going to share my experiences with the Mitakon Lens Turbo. I assume most of you have heard of it by now, it's a device similar to the (much more expensive) Metabones Speed Booster. They work in the same manner though, and these so-called Speed Boosters are most easily understood as working as the reverse of a teleconverter.

Instead of concentrating your sensor on a smaller portion of the lens, it instead makes use of *more* of the lens. This is possible if you're using a smaller-than-fullframe image sensor (i.e. camera's with crop-sensor, such as Sony NEX-6, Canon 7D), together with a full-frame lens.
The adapter essentially concentrates the light that normally falls outside of the crop image-sensor onto the the image sensor itself.

If we would visualize sensor-sizes, we could get a graphic like this:


A full-frame sensor, like that in the Canon 5D mark III, is 36mm x 24mm (864mm2).
An APS-C sensor, like that in the Sony NEX-6, is 23.5mm x 156mm (336mm2).


Now you can see part of the reason why a full-frame camera is so expensive: its sensor is 864/336 = 2,5 times bigger than an APS-C sensor!

We can also prove that an APS-C sensor like that in the NEX-6 is a 1.5x crop sensor, by dividing: 36/23.5 = 1,53 or about 1.5 crop.

The reason why the Lens Turbo covers a slightly smaller area than that of the full-frame sensor (orange area) is that it's a 0.726x adapter.
That means that if we do 1.5 cropfactor * 0.726 = 1,089 (actually about 1,112) - basically we have an effective 1.1 crop sensor if we use the Lens Turbo (where 1.0 would be full-frame).


What you can also see is the white-circle, which designates the imaging circle of a full-frame lens. As you can see, a lot of light falls outside of the APS-C area when using a full-frame lens.

The Lens Turbo catches the light of the green area (APS-C + Lens Turbo) and projects that light onto the blue area, which is the area of the APS-C sensor as used in the NEX-6.


So, what this means in practice is that with the Lens Turbo you'll get a close to full-frame (but not quite) effect on a crop-image sensor body.

Now, of course, if you concentrate all the light onto a smaller area, you get the added bonus that you effectively double the amount of light, as that's the amount of light that would otherwise fall outside of the crop-sensor area. 

...

Hold on, that's a huge advantage! 

Double the amount of light can translate into a shutter speed that can be twice as high, or indeed, an ISO-setting (a.k.a. ISO-speed) which is a full-stop lower - MOAR light, hooray!!11!

You can see why these kinds of adapters are also called Speed Boosters.


This all sounds rather good, right? So let's have a further look - there are also more photo's to look at, rather than text, I promise!




So... what does it look like?

Well, the adapter itself looks pretty plain, with some inscribed markings. Inside the package there's a small leaflet, which should be helpful but is actually all in Chinese :)

The adapter itself actually has quite a bit of heft to it - it's quite a bit heavier than you would expect it to be. It's reassuringly solid though, and makes for quite a nice-looking black package on the Sony NEX-6:


Notice the FD-mount aperture locking pin just below the Lens Turbo lens

Another nice thing: the Lens Turbo is actually smaller than a normal adapter. Small camera = good :)

Lens Turbo with Canon FD 50mm 1.4 mounted

Besides weight, a big advantage of small camera's is that it's less in-your-face than a full-blown DSLR. Being less intimidating helps when photographing in public, you stand out way less and keeps people looking natural. It's just a small compact-cam afterall ;)




Why the Canon FD-mount version?

As you can see, I chose the Canon FD version of the Mitakon Lens Turbo. Canon changed lens-mounts in the late 80's from FD-mount to EF-mount. With it, a big difference was introduced, namely that the new EF-mount features all electronic connections between the lenses and their camera bodies. Having an all electronically controlled aperture of course results in that EF mount lenses don't feature an aperture ring. Or at least I don't know of any :)

Now, this is especially important because as you've noticed, the Mitakon Lens Turbo doesn't actually feature any electronic contacts. If I'd mount an EF-mount lens (and I do have some quality EF-mount glass), I'd have no way to actually change the aperture. 

Not exactly what I'd call handy!


The Metabones Speed Booster *DOES* have the ability to communicate and change the aperture lenses electronically on Canon EF lenses, but it's a heck of a lot more expensive - about 3 times as expensive as the  Mitakon Lens Turbo here in the Netherlands. It also does autofocus on Canon EF lenses, albeit very slowly. In fact Metabones themselves mention that it'll likely disappoint and you're better off manually focusing.

Since this is all just a hobby, and I'm actually on a budget of what I'm willing to spend, I chose the Canon FD-mount version.

Some further research actually taught me that the Canon FD-mount version is the most popular, as the FD-mount has one of the smallest register distances (i.e. the distance of the sensor to the lens-mount) of legacy camera systems, allowing other legacy glass to mount on this FD-adapter as well.

This is because mount-adapters are able to fill up the space between the lens and the sensor, as long as the adapting mount (e.g. FD-mount) is larger than the register distance of the host system (e.g. NEX). After all, a lens always projects its image onto the image sensor from a set distance, as designed by its manufacturer. 

Because the NEX-system (neé, Alpha) again has a much smaller register distance than the FD-mount system, adapters like the Lens Turbo are possible which fill in the register distance gap between FD and E-mount, as used by the NEX-system.


E-mount (NEX) and EOS-mount (Canon) compared


The above image (somewhat crudely) shows register distances as illustrated by a Canon 7D and a Sony NEX-6, aligned on sensor-location on the green line. 

The yellow line indicates the lens mount for the NEX E-mount system, whilst the red line does the same for the Canon EOS-mount. 


Anyway, what this illustrates is that there's plenty of space between the yellow (E-mount) and red line (EF-mount) for an adapter to be placed. This space saving is made possible because mirrorless systems, well... don't have a mirror :)

I've only got two lenses for now, since I've only got a it a couple of weeks, which is the Canon FD 50mm f1.4 and FD 35mm f2. As you can see I went for the so called FDn, or New FD, lenses, primarily because they are supposed to be lighter than the older Canon breech-mount lenses. Those breech-mount lenses are easily identifiable from a distance by having a chrome ring at the lens-mount.

Canon FD brothers :)



I bought the Canon FD 50mm 1.4 first, as I was just very curious about how all this manually focusing would work out. It could be that I wouldn't like it at all. So, I chose this lens because it's quite cheap, and the nice thing about buying cheap is of course that it lowers the entry barrier.

Another consideration is that I'm really an autofocus guy, and this is actually the first manual focus lens I've ever held in my hand, let alone use. I wasn't exactly sure that I'd even like manual focusing :)

Luckily, these FD lenses can be picked up for pretty cheap, I paid 50 euro (about 67 US Dollar) for the FD 50mm 1.4, and it's in mint condition. 



On the first day I bought it, I first had to figure out how to correctly mount the Lens Turbo onto the lens. It's actually a bit more finicky then you'd expect. You first have to align the lens on the adapter on the red dot, then twist a bit backwards aligning to the yellow dot, and then rotate again the other way to securely mount it.

Here's a video to show the locking process of an FD lens onto the Lens Turbo:




This extra step is necessary because the Canon FD-mount lenses have a bit of metal sticking out which actually enables the aperture ring on the lens, and it needs to be in the correct place before you can operate the aperture via the aperture-ring on the lens.

That's right: if you haven't mounted the lens, you cannot operate the aperture of the FD-lens by turning the aperture-ring.

If you're wondering if the manual of the Lens Turbo doesn't help, then you're right: it doesn't help. Or, at least, my Chinese isn't very good so it's of no help to me :)


The leaflet included with the Lens Turbo says something about tolerances. Well, I *think* it does so anyway :)






Lens Turbo + Canon FD 50mm f1.4 sample pictures

OK, that's enough talk, what do the pictures look like?

Well, here are some images I shot the first day I had my first lens for the Lens Turbo, the Canon FD 50mm f1.4:





More are available on the webalbum over at:
https://plus.google.com/photos/+HasanKaragülmez/albums/5939560062371528433


I'd describe these as "bokehlicious"  :) 

In fact, I don't have another lens which can so easily throw the entire background into a complete and buttery goo! 
Perhaps I went a bit overboard with some, but hey: it's always nice to play with something new right? :)

I also have a series shot with the Canon 50mm f1.4, where you can see that it is indeed a bit glowy and soft wide open at f1.4 (a crazy f1.0 equivalent with the Lens Turbo), but it sharpens up nicely from f2.0 on.

As another test, I made a little test of all selectable apertures on the FD 50mm 1.4, which goes from f1.4 (duh), all the way to f22:


Canon FD 50mm f1.4 - f22 - hooray for Google+ automatic GIF creation :)

View all intermediate apertures on this webalbum:
https://plus.google.com/photos/+HasanKaragülmez/albums/5948043545042752065




So, what about the Canon FD 35mm f2?

Well, besides obviously giving a wider field-of-view than the 50mm, I read on the internet that the Canon FD 35mm f2 is quite susceptible to flare even in it's native guise. The Lens Turbo is supposed exacerbate this as well. 

Well, without further ado: I can confirm that it does indeed flare more than the FD 50mm f1.4, but it's all at a level that I can live with.

To test the flare, I shot these all in the night of a light project. In other words: plenty of candidates for creating flare :)






So yeah: there's definitely flare, but overall not too shabby at all in my opinion. There's a hint of the blue-dot which apparently plagues many a Lens Turbo, but I don't have a problem with the Lens Turbo if it works like I've posted here. YMMV, as always :)

Another nice thing about the Canon FD 35mm f2 is that it's also noticeably sharper wide-open than the FD 50mm f1.4 - a very nice surprise.

Here's a wide-open f2 shot to illustrate:

Regarding price: I paid 160 euro (about 214 US dollar) for this FD 35mm f2.
Quite a bit more expensive than the 50mm 1.4, but then again, the 50mm 1.4 is just ridiculously cheap :)

Besides, these two FD lenses + Lens Turbo are about the same price for what I paid for the Sony 35mm 1.8 OSS (a.k.a. SEL35F18, hands-on post here: http://hasankaragulmez.blogspot.com/2013/05/sony-35mm-18-oss-sel35f18-hands-on-with.html ).


Compared: Lens Turbo + FD 50mm 1.4 vs EF 50mm 1.8

Canon FD 50mm f1.4 - Canon EF 50mm f1.8


I don't have a full-frame camera, unfortunately, but as a final test, why not try and compare these lenses to the Canon 7D with a full-frame EF 50mm 1.8 lens.

Canon 7D - EF 50mm f1.8



Remember, the Lens Turbo is a 0.726x converter, which should make a 50mm lens:
 50mm * 1.5 cropfactor = 75mm * 0.726 = 54.45mm equivalent.


So, basically, we expect to be slightly zoomed in with the NEX-6 and Canon FD 50mm 1.4 compared to the Canon 7D with EF 50mm 1.8, right? Nope!

Here's the Canon 7D with EF 50mm 1.8:
Canon 7D - EF 50mm 1.8


Here's the NEX-6 with Lens Turbo + FD 50mm f1.4:
NEX-6 - Lens Turbo + FD 50mm 1.4

So, you can see here that the Lens Turbo with a full frame Canon FD 50mm 1.4 gives a *MUCH* wider view than the Canon 7D and full frame EF 50mm 1.8 lens. Pretty significant difference huh?

The Canon actually has a 1.6x crop-sensor, so its field of view is equivalent to a: 50mm * 1.6 crop = 80mm full-frame lens. Still very nice for portraits.


The Lens Turbo, on the hand, makes a full-frame 50mm lens behave almost exactly like it would on full-frame.

The nice thing now is that we can change our framing, but still keep our subject in the frame. For example, since we are now able to position our subject closer by, we can blur out the background more as the background is now further away related to the subject.

See here: same camera position, different subject position. Notice the background melting away, making our subject stand out far more:
NEX-6 - Lens Turbo + FD 50mm 1.4

Nice huh?


Another option would have been to bring the camera closer by of course, rather than the subject, but you get the general idea :)

BTW, in practice, lenses designated a certain focal length (e.g. 50mm) can actually diverge a bit, so it's not all exact anyway, but should be close to 50mm.



Compared: Lens Turbo + FD 35mm f2 vs Sony 35mm 1.8 OSS (SEL35F18)

Staying on the same NEX-6 camera, we can do a test here of two 35mm lenses - the Sony SEL35F18 and the Canon FD 35mm f2.

The difference between these lenses specs-wise in native guise is actually pretty close, with the Canon being a full-frame lens, but the Sony being a third of a stop brighter. Also, something not to be sniffed at, the Sony actually has an image stabilizer.

Sony 35mm f1.8 OSS - Canon FD 35mm f2


However, the Lens Turbo makes the Canon FD 35mm f2 give the brightness of a 1.4 lens, and more light beats having an image stabilizer in my eyes. This is especially true for when trying to capture movement as that's where shutter-speed will matter. 
After all: an image-stabilizer cannot stop the world from moving :)

Let's see what the difference is between the SEL35F18 and the Lens Turbo + Canon FD 35mm f2, both on the Sony NEX-6.

Remember here, that the FD will have an expected field-of-view of 35mm x 1.5 cropfactor x 0.726 = 38,115mm. 

But wait: the SEL35F18 should give field-of-view about equivalent to a 50mm full-frame lens, so we expect to be slightly zoomed out with the Lens Turbo + Canon FD 35mm f2.

Let's see, here's the SEL35F18:

SEL35F18 - Autofocus is nice, but it actually missed the head a bit here :)


And here's the Lens Turbo + Canon FD 35mm f2:


NEX-6 - Lens Turbo + Canon FD 35mm f2



As you can see, the Lens Turbo + Canon FD 35mm f2 gives a field of view that is wider than that of the SEL35F18, as expected.

Finally, I can say that both of these lenses are sharp enough for me.




Conclusion

Go buy it :)

No, seriously, if you're even remotely interested, you can buy a Lens Turbo and a nice FD 50mm 1.4 for quite cheap and see if it's worth it or not. If not, you've still not lost a great deal.

It's exactly this mindset I had as well, and I have to say, this really gave me a new dimension in photography. Yes, manual focusing can be hard, though focus-peaking and zooming helps. And yes, these old vintage lenses aren't as clinically sharp as modern computerized designs from 20-30 years later (though some are, few of those are reasonably priced).

But sharpness isn't everything in my opinion, and these lenses already give a me a lot of fun in return for the modest investment I made.

I'll report back if I've got something else to say on the matter, in the mean time, happy shooting and let me know if you've got any questions or remarks. 

I'm here to learn as well after all :)







Tuesday, October 8, 2013

Upright and Lens Corrections with Sony NEX 16-50mm in Lightroom and PhotoShop

by Hasan Karagülmez
A some of you probably already know, Lightroom 5 and PhotoShop CC include some pretty cool lens- and perspective-correction options.

In this blogpost I want to show what you can achieve with this in practice, especially with a lens which natively distorts a lot: the Sony 16-50mm f3.5-5.6 powerzoom (modelname: SELP1650), available separately but also as a kitlens with the NEX-6.

In fact here it is, small, but proud as ever on the NEX-6:
The Sony SELP1650 powerzoom mounted on a NEX-6



Why use lens correction?

Well, in the case of the 16-50mm, the benefits of this lens is pretty obvious: it's very small and lightweight.
Certainly size wise it makes a NEX-camera very (jacket-)pocketable, which is 
a big plus for me, as you'll also see my Sony 35mm 1.8 OSS review.

Of course the 16-50mm party-trick is that it's a powerzoom, so it extends when the camera powers up. Rather than a zoom-ring, it has a zoom-switch, which has the added benefit of smooth zooming in video mode as well.


The SELP1650 uses a switch (powerzoom) to actuate the zooming mechanism on this lens.


This is all well and good of course, but there's no such thing as a free lunch and the 16-50 hammers that message home with some pretty impressive (in a bad way) distortion when you shoot RAW.

Well, it happens all the time of course, but modern NEX-camera's like the NEX-6 will automatically correct for this distortion and other lens defects so you will never really see how it behaves (or rather misbehaves) in JPEG mode.


I shoot in RAW 99% of the time, caused it saved my butt just too many times. I guess I'm not good enough to shoot JPEG only, YMMV :)

That does mean that using lens-corrections becomes a part of the workflow, so let's dive in and see what we can do.



How to use lens-corrections in Lightroom

It's actually very easy, in Lightroom you can view the Lens Corrections section just above the Effects section, when you're in Develop-mode.

It looks like this:




Note that these settings are available in PhotoShop as well, if you use Camera RAW.

Anyway, let's take a look at what we can do with the distortion with some sample pictures, shall we?

Oh, just one note, each example consists of three pictures:
  1. As shot distortions
    That is, all distortions as you would see them when shooting RAW, including vignetting and such.
  2. Lens-corrections applied
    Should take care of complex lens distortion (pincushion, barrel), as well as vignetting.
    Note that this will only work if your lens is supported by Lightroom, luckily the SELP1650 is supported.
  3. Upright with the Auto-setting
    Will straighten lines in your photo and correct for perspective.



Example 1: Car and building


Note how the straight lines of the buildings makes straightening this out and correcting for perspective an easy job. Also note how quite a bit of the underside of the picture is chopped off, even though it doesn't really matter in this shot, it's easy to see how it could have. In fact, in another example you'll where this will matter.

Having humongous GIF's results in humongous file sizes, so if you want to view the individual images in higher resolution feel free to look in the Google+ photo-album



Example 2: Building


This building is obviously a bit more distant, as it's bigger, but still pretty close, resulting in a need of a focal length of 16mm to capture it.
You can see how the Upright functionality works like a charm, but it also cuts off a bit at the undersides.

Easy to crop out though, or perhaps even fill up with Content-Aware Fill in PhotoShop if you're a bit more adventurous.




Example 3: Church


You'll see the same effect, even as the pictures aren't taken head-on, they are still corrected very well.

However, it also shows you that using the Upright functionality could crop your photo, and you should account for that if you think you're going to need it. 

For example, you can see how in this example that the top-right corner of the building is cut-off.


Wrapping it up

I'll leave it at that for now, you can see two more examples in the Google+ photo-album.

Basically, we can say that using the lens-corrections is definitely something that's really really worth the effort with the 16-50mm kitlens, because of the massive native distortion.

A direct consequence of the lens design I guess, even though it brings important advantages, size being the most prominent one for me.

The Upright functionality in Lightroom (and PhotoShop for that matter), can help give you a new dimension in your photography with minimal effort.


Sure, you *could* have done this all by hand in PhotoShop, but I'd sure hate to have done so - especially considering the simplicity of only having to click twice in Lightroom.

Anyways, happy shooting!

Monday, May 27, 2013

Sony VF-49CPAM Circular Polarizer - Hands On

by Hasan Karagülmez

Intro

I´m very happy with my recent purchase of the Sony 35mm 1.8 OSS, a.k.a. SEL35F18, of which you can read about it on my recent blogpost.

The depth-of-field with which you can play with, with a wide-aperture lens, is really fun. There's one thing I was missing though, which became evident when taking pictures of my car, and that's a polarizer!

As you probably know, you can use a polarizer for getting nice blue skies, but you can also use it for shooting through reflections. And whilst you can edit-in nice blue skies in post-processing, shooting through reflections is a significantly harder trick to pull-off in PhotoShop, I'm sure you'll agree ;-)

Another reason is size. 

See, I've already got a Hoya 77mm polarizer which I use on my lenses for the Canon EOS 7D, and I contemplated for a little bit about using that for NEX-lenses with step-up rings from 49mm to 77mm. 

However, that would also mean I´d be throwing pocketability with the NEX and 35mm 1.8 out of the window, something which is a major plus for me.

Another reason for this post is that I can't find much about the Sony VF-49CPAM online, so I hope to do my part here :)

Anyway, a new polarizer it is!



Sony VF-49CPAM - Circular Polarizer


I eventually made the decision to go with the Sony VF-49CPAM Circular Polarizer filter. It's not the cheapest 49mm polarizing filter you can find, but having noticed reflections and such on cheaper polarizers, I decided to fork out a bit more.

I ended up on paying 90 Euros (about 116 US Dollars) for the Sony VF-49CPAM. Not cheap, but few things in the Netherlands are...

Anyway, I'd like to show you the effects of the polarizer on blue skies and such, but since the weather for the last weeks consists mostly of clouds, I'm afraid it's gonna be a bit hard...
The weather for the last two weeks can be summed up by the following: Thick Clouds and Rain

So, instead, I'm going to show you what you get in the box - and a bit about reflections :-)
Note that you can view all the pictures on the Google+ webalbum, or by clicking on a picture.

Let's start with the box!



Sony VF-49CPAM - Packaging

The Sony VF-49CPAM comes in a Sony Alpha themed coloured box. As you can see, It's actually not specifically marketed as being for NEX-bodies, though the Sony Website does list just about every Sony NEX lens as compatible: http://www.sony.co.uk/product/dsl-filters/vf-49cpam/compatible-products#tab

Even the very expensive 24mm 1.4 is on the list, so good job on making 'em all compatible Sony!

Sony VF-49CPAM box - front
Sony VF-49CPAM box - innards
Sony VF-49CPAM box - top

As you can see, the polarizer itself is right in the front of the package, with the case in the backside compartment. The packaging is actually very easy to open, none of the regular blister-packaging nonsense.

Let's get it out of the packaging and take a closer look!


Sony VF-49CPAM - Size

With a filter size of only 49mm you'd expect it to be small, ofcourse, but seeing it in person and holding it in your hands you can see how "dinky" it just is.

In fact, it's even lower than the NEX lens-cap!




Let's see how it compares to the Hoya 77mm Circular Polarizer which I use for my DSLR:


The difference in size is enough to transform it into the realm of pocketability ;)


Mounted on a lens

Let's see how it looks like when mounted on a lens. 
As you can see, when fitted on the 35mm 1.8 OSS (see my hands-on) it's still smaller than the NEX 18-55-kitlens. Awesome :)


We can also fit it on the NEX-kitlens of course, in which case it neatly fits on the middle of the extending barrel. Very well done :)


You can also see now why having a non-rotating barrel is important. If the barrel rotated whilst zooming out, the polarizing effect would change!



Complete package

And here it is mounted on the 35mm 1.8 OSS, which in turn is mounted on a Sony NEX-5. As you can see, the package isn't much larger than it was - a big plus!

For changing the polarizing effect you can turn the ring, which, whilst small, is still perfectly operable. I'd advice you to turn the ring of the polarizer to the left (as seen when you're behind the camera) when changing polarization, because turning to the right might unscrew the actual filter itself.


As you can see, the VF-49CPAM doesn't add much additional length to the package
The all-black package of the NEX-5, 35mm 1.8 OSS and VF-49CPAM looks the part!
The front of a camera suddenly looks a lot cooler with a seemingly large piece of glass in front of it ;)


Carrying Case

Remember that photo above, with the case which comes in the box? It's a pretty neat addition, in case (ha!) you might want to pull that polarizer of the lens.

It's a bit bigger than it needs to be for this polarizer, not sure why that is actually, as it results in having a bit of empty space when the filter is placed in it. I personally would have liked for it to be smaller and neatly fitting, as it saves space.

Perhaps the case is used for other-sized filters as well?

The carrying case actually holds the polarizer in place quite well; it doesn't seem to rattle around



Sony VF-49CPAM - Markings

There are four markings on the VF-49CPAM itself, which are, in order when turning the ring to the left:

  1. Sony
  2. Carl Zeiss T*
  3. Circular PL Filter 49mm  
  4. VF-49CPAM Made in Japan

They are all spaced out 90 degrees from each other, i.e. placed at each quarter.

Even though it's marked as having Carl Zeiss optics, it's also marked as Made in Japan. I'm guessing that that means it's made by Sony, by the specifications of lens design by Carl Zeiss and using a licence for the name.
The same as the so-called Carl Zeiss compacts by Sony, read about that on this Carl Zeiss page for example.






Note that these markings are all placed on the turning ring, and so these come in handy to remember how much we've turned the ring. 

Probably not a coincidence ;)

Time will tell how well the markings stay in place.



Polarizing Test

As you've seen, the weather has been rather crappy, so I mostly did some indoor testing for shooting through reflections. This morning, at the first workday, the sun started shining again, so I took some shots of that as well.


Test 1 - Reflection

Let's start with the reflection test.
In this test, I'm shooting into the front of the Canon 7D with 24-70mm 2.8 L lens, which has the 77mm Hoya polarizer attached (which is why it looks so massive).

As you can see, I've positioned the NEX 18-55mm kitlens so that it appears in the reflection.
I've shot this with the NEX-5 with 35mm 1.8 OSS with the VF-49CPAM, with the Sony marking on the ring at the top.
VF-49CPAM attached, Sony marking on top - as good as no polarizer effect

And on the next shot, the goal was try and shoot through the reflection. 
In order for this to happen, I've turned the polarizer 90 degrees to the middle of the Carl Zeiss T* marking on the ring.
Turned 90 degrees to the Note how different the lens reflection looks like, we can now see through it. The lens hood looks really different as well.

Works pretty well huh? 

We can now see through the reflection and actually see the markings of the Canon 24-70 2.8 L lens, which wasn't visible before.
Also note how different the lens-hood looks, it's a lot deeper black and reflects a lot less. 

Very nice!


Test 2 - Reflection

Next up, let's try a different situation and use my phone. When held under a small angle, there can be quite some reflection, as evidenced in the next shot:


Polarizer ring turned 0 degrees, left on the Sony mark on the top of the ring.



Now, let's try turning the ring 90 degrees for maximum effect:
Turning the ring 90 degrees we can shoot through the reflection, and actually see the contents of the screen.

Pretty neat as well huh? The phone looks a lot better, however note the rainbowing effect on the screen? It's not inherent to this filter, as I saw the same effect with the Hoya 77mm.

You can get rid of that effect by changing your angle to the subject, for example:
No rainbowing effect with maximum polarization, but changed shooting angle

What's important to remember is that you must sometimes take extra care when using a polarizer!


Test 3 - Shooting Blue Sky


Just as I was ready to post this blogpost, there were some nice blue skies popping up for the first time in quite a while.

Ideal moment to test right? 

To test, I shot four different shots, each at the middle of each marking on the turning ring.
Note that I opened these four RAW files in PhotoShop CS6 with Camera RAW, all defaults, then resized and saved as a JPEG-image.

Let's see how it turned out:
CF-49CPAM turned 0 degrees - middle of "Sony" marking

CF-49CPAM turned 90 degrees - middle of "Carl Zeiss T*" marking

CF-49CPAM turned 180 degrees - middle of "Circular PL Filter 49mm" marking

CF-49CPAM turned 270 degrees - middle of "VF-49CPAM Made in Japan" marking


As you can see, it's polarizing effect on blue skies is there, but it's relatively subtle. The biggest effect can be seen on the right-side of the picture.


Note that I've shot these shots in the morning, you might get another effect in midday or at another time, so the Sun is in another place.



Conclusion

The VF-49CPAM is a nice polarizer for sure. It feels sturdy and fits neatly on NEX-lenses. All Sony NEX-lenses seem to be compatible as a result of them all using the same filter size. (update: not all it seems, the 16-50mm pancake lens has a 40.5mm filter thread...)

It works perfectly for shooting through reflections, but gives a relatively modest effect on blue skies.

It's not the cheapest filter money can buy, but the pricing does seem in line with the price of quality filters of this size.

Note I've only got it a couple of days, but I felt a little blogpost would help as I cannot seem to find that much information about this lens.

Perhaps I'll add some extra info in the future, and as always, if you've got questions let me know.

That's it, happy shooting!