Tuesday, June 13, 2017

Pixels on Poster Prints

A few days ago, I got a copy of photos from my sister-in-law's wedding earlier this year. Among those, were a few shots that my mom had specifically requested the photographer for; she wanted a big print of a family portrait. I selected one which seemed the best of the lot and proceeded to make some edits (eliminating the ugly wall and door in the background, moving dad a little closer to the rest of us, adding a different background etc.); thanks GIMP!

Once I was happy with the end result, I showed it to mom, wife and sis (the main stakeholders in the final product) for their suggestions. I was about to order the print from Zno (One of my favourite sites for professional looking photo printing jobs) when I realised I hadn't checked if the resolution was high enough for a poster size print that is supposed to adorn the living room wall. I know, dumb mistake; this should have been one of the first things to check.

I'm used to about 20+ MP photos for big prints (I recently got a 16"x20" print from Shutterfly of a Tulip shot I clicked during a visit to Skagit Valley in April), so when I realised the copy I have is only about 11MP, I was dejected and felt all my effort go to waste. Several follow ups with the photographer revealed that he shoots all weddings on the same mid-resolution setting of his camera (No idea why, it's not the 90's anymore that you have to worry about storage costs). I still wanted to get that poster so I went in research mode to determine what is the biggest print I can get from the limited resolution digital shot I had. That brings us to the topic of this post.

Of course, the higher the resolution in an image, the bigger you can go. More pixels also give you more leeway in post processing, you can play around more with the image to bring your vision to life and you can get away, to some extent, with not so great shots. However, there are some important factors that come into picture (pun intended) when deciding what is the biggest print you can get given an image, or conversely, what is the minimum resoution you need to get the desired print size.

From my research, I realised that the most often overlooked piece of the equation is the viweing distance. The bigger the print, chances are, the further away it will be viewed from. A rule of thumb is 1.5 times the diagonal of the image e.g. if you print a 16"x20" poster, the diagonal will be approx. 25" and the recommended viewing distance will be approx. 38". This will become one of the factors in our calculation.


The second part of the equation is the viewing angle. The human eye cares about the angular size of the object in the field of view (trues for a single eye, with a pair, stereoscopic vision and depth comes into discussion, but that's not the topic here). Every object in the field of view has an angular size and there is a maximum resolution that the eye can perceive. If your pixel density is higher than this, your eye cannot sense individual pixels and the image appears as a smooth curve. This is what Apple famously calls Retina Display.


Based on what I came across, the eye can resolve upto 60 individual elements per degree In pixel terms, this means the eye can identify individual pixels if there are upto 60 in a degree. Any more than that, the human eye won't be able to tell one pixel from another. Rephrasing the same data, an individual pixel should not form an angle of view more than one arc minute or 1/60th of a degree at the viewing angle.

Since 1 arc minute curve is negligible, reasonable approximations will convert the problem of finding the real life size of a pixel to a simple trigonometric problem. Here is an exaggerated view of the problem, since at actual scale, the triangle will pretty much look like a straight line.


Here, V is the viewing distance we calculated earlier by a simple application of Pythagorean Theorm followed by the thumb rule, and P is the physical size of the pixel.

D = sqrt(L^2 + H^2)
V = 1.5*D
P = 2*V*tan(1/120)     [The angle here is in degrees]

For the 16"x20" example we had considered earlier, the size of the pixel computes to approx. 0.0112", or inverting it gives the resolution of approx. 90ppi (Pixels Per Inch). Extrapolating this to the entire image, it means your image should at least be 1440x1800 pixels. Anything smaller than that will give extremely poor results.

That, of course, is the bare minimum resolution you need to fool your eyes under ideal viewing conditions and at proper viewing distances. You wouldn't want to get your print appear pixelated the moment someone walks an inch towards the frame, so you should prefer at least double the resolution given by this formula, i.e. 180ppi for a 16"x20" print, or an image resolution of 2880x3600 pixels which is roughly a 10MP image. Anyhting bigger than that will not make a difference at typical viewing distances. It will improve quality al closer viewing distances, but could also add time and cost to your print. So weigh your options before settling on a print size.

The poster I wanted to print has the final edited image at 3894x2596 pixels and I want to print it at 24"x30". Using the same approach outlined above, for a good 24"x36" print, the viewing distance should be approx. 65" or  5'5" and a maximum pixel size of 0.0188". This translates to 53ppi, or 1272x1908 pixels. Doubling the density gets us 106ppi or 2543x3814 image. Since I have just a little more pixels than that, I should be able to get a decent print.

I used the same approach to calculate the minimum resolution needed for different standard poster sizes listed on Zno

Standard Poster Sizes and Required Image Resolution
Height (Inches) Length (Inches) Diagonal (Inches) Viewing Distance (Inches) Max Pixel Size (Inches) Min Pixel Density (PPI) Min Image Resolution Recommended Pixel Density (PPI) Recommended Image Resolution
8 10 12.81 19.21 0.0056 178.96 1432x1790 357.92 2863x3579
11 14 17.80 26.71 0.0078 128.72 1416x1802 257.44 2832x3604
10 24 26.00 39.00 0.0113 88.15 881x2116 176.29 1763x4231
12 12 16.97 25.46 0.0074 135.05 1621x1621 270.09 3241x3241
16 16 22.63 33.94 0.0099 101.29 1621x1621 202.57 3241x3241
16 20 25.61 38.42 0.0112 89.48 1432x1790 178.96 2863x3579
20 30 36.06 54.08 0.0157 63.56 1271x1907 127.13 2543x3814
24 36 43.27 64.90 0.0189 52.97 1271x1907 105.94 2543x3814

I hope this helps out people in a similar situation as myself. Comments and suggestions to make the post better and more useful are always welcome.

Saturday, May 15, 2010

Cloud Computing

This blog was created long back with the purpose of sharing what I felt I knew and may provide useful information to someone else. However, nothing was published here since:
a) I became lazier than I usually am.
b) I couldn't think of anything worthwhile to post.
However, Vipin Sharma, one of my batchmates at MDI Gurgaon, provided me the opportunity by asking me to provide some information on cloud computing. So, as my first post on this blog, here comes what I had written to him:
  • Cloud computing is a concept that tries to move IT expenditure from a CapEx model to an OpEx model. Traditionally, IT implementations involve huge fixed (capital) investments in terms of hardware and software licences. It also involves maintaining a dedicated team of IT professionals for maintenance and upkeep of these systems. Cloud computing takes away this burden from organisations by moving to a licence plan involving data usage/per user/time usage/number of transactions or a combination of these metrics instead of an annual/ one time implementation fee.
  • The companies are saved the trouble of investing in IT systems as they do not have to physically own the systems. The actual system is owned by the IT service provider and the users avail the facility through a thin client, typically a browser.
  • Cloud computing builds a layer of abstraction over the implementation so that the only thing the end user has to worry about is his business needs.
  • Cloud computing makes sharing and collaboration easy by allowing multiple users spread across geographies to work on the same document simultaneously.
  • Cloud computing is a move towards implementing the SOA (Service Oriented Architecture) concept by exposing traditional software systems as a service. This is also popularly known as SaaS (Software as a Service).
  • Cloud computing is a win-win for SMEs wanting to implement popular IT systems and IT companies providing implementation services. Small companies cannot afford the huge initial investments associated with IT systems, so a usage based fee is more apt for them. IT companies get to explore a new market segment as all the major clients (fortune 500 etc) have already implemented almost everything and the only repeat business is upgrade and maintenance. (I know this is definitely correct as this statement got me my current job! :D). Even global software giants like SAP and Oracle are exploring opportunities in this area with lighter web based versions of their traditional packages and new product development eg Oracle's Fusion Middleware expected to be released in late 2010.
  • Integration between different systems will become easier as more and more industry standard interfaces are developed, thus making IT implementation much less dirty than it currently is, at a fraction of the cost.

Despite the benefits, some of the drawbacks of cloud computing systems are:

  • Many companies want the software to be tweaked a bit to match their business processes. This is not possible as companies offering cloud computing services will make a standard offering with little or no modification options.
  • Security, data integrity and privacy would be major concerns for companies going in for cloud implementations as the actual data resides on another company's servers. IT security and international business laws will have to reach a certain maturity level before cloud computing can take off in a big way.

Though not entirely accurate, some examples of traditional systems vs their cloud/cloud like counterparts would be:

  • Organisational email on company servers vs web based email solutions. Our own example of MDI Squirrel Mail vs ManDevIan Web Mail would be apt.
  • Office productivity suites like MS Office installed on the PC vs Web based collaborative office solutions like Google Docs

This is by no means a comprehensive introduction to the hot topic of computing on the cloud. The reader is encouraged to explore more exhaustive resources on the internet.

Cheers
Aalok
--Fear knocked at the door. Faith answered and no one was there.