Showing posts with label research. Show all posts
Showing posts with label research. Show all posts

Thursday, March 5, 2020

Testing a Cheap 2X Telephoto Converter Attachment for DSLR Camera Lenses


The Product

"58mm Telephoto Magnification Lens, Accessory for Cameras 58MM 2X Magnification Universal Teleconverter Telephoto Lens for Cameras"




The Pitch

"Bring objects you are photographing twice as close perfect for sports photography, bird watching, nature and anytime you need that extra distance. DOUBLE YOUR LENS FOR FRACTION OF THE COST OF NEW ZOOM LENS"

The Price

Only $13.99 on eBay, or $12.99 - $19.99 on Amazon. It's even available on B&H for $32.99 branded as Vivitar. All available for various filter sizes.

What?

Many beginner DSLR packages on Amazon come bundled with a lot of beginner gear that I endearing refer to as toys. In that previous link, I've given my perspective on the usefulness of many of these common items. Tl;dr - they're fun to play with for absolute beginners, and the gear is generally outgrown very quickly. Some items last longer than others; some items are not safe to use from the beginning.

One item in particular that I'll argue isn't particularly helpful from the very beginning is the 2X to 2.2X Telephoto Adapter, marketed with different branding depending on where you're seeing it sold.

Test Gear

Since this lens came with a basic DSLR gear package, I'll test it with two other common beginner/kit lenses and an intro body:
  • Canon T5 body
  • Canon 18-55 f/3.5-5.6 IS II "kit lens"
  • Canon 75-300 f/4-5.6 III USM "kit telephoto lens"

Test Conditions & Photos

The following are the resulting photos with minimal processing - just a slight exposure adjustment and nominal sharpening added to each raw file, then they were exported as JPEGs. As a parent to a toddler and an infant, I haven't had a ton of time to test this in optimally bright and uniform conditions of afternoon daylight. These photos were taken close to sunset with low level clouds passing in front of the sun so daylight was fading very quickly.

Ideally an ISO of 100 should be used while maintaining a high enough shutter speed to mitigate camera shake. While I came close to mitigating camera shake, a tripod/lower ISO/better testing conditions are desirable for a better comparison.

Additionally, I accidentally shot at 50 mm instead of 55 mm for the 18-55 control shot with no adapter.

Maybe I'll get around to updating this image set.


Images:

Kit Lens

18-55 @ 50mm
ISO 100, f/5/6, 1/125s

18-55 @ 55mm + 2.2x Adapter
ISO 100, f/5.6, 1/125s

Wide Kit Telephoto

75-300 @ 75mm
ISO 400, f/5.6, 1/250s

75-300 @ 75mm + 2.2x Adapter
ISO 400, f/5.6, 1/200s

Long Kit Telephoto

75-300 @ 300mm
ISO 1600, f/5.6, 1/200s
75-300 @ 300mm + 2.2x Adapter
ISO 1600, f/5.6, 1/200s




Comparisons


Kit Lens



Magnification is apparent - at the cost of sharpness. The center clarity is pretty hazy, but the edges are full-on muddy.


Kit Telephoto vs. Adapter



This is the most important comparison. Extending the kit 18-55 mm lens with a 2x tele adapter is significantly less sharp and more heavily distorted with image degradation issues.

Wide Kit Telephoto, Adapted

75-300 @ 75mm + 2.2x Adapter
Image degradation is absolutely apparent, and this will be as best as the image quality gets on a telephoto lens.

Long Kit Telephoto



ISO 1600 is my personal limit of ISO speed on this intro body to balance noise in low light. This kit telephoto lens works best around f/11, and f/5.6 is often too soft @ 300mm for really enjoyable results. 1/200s is far too slow to shoot at 300mm handheld.

Despite those very important and clearly sub-optimal shooting conditions, it cannot be any more apparent how much image degradation is occurring. Terrible sharpness, awful contrast, muddy/abberated colors, etc. Just night and day bad.

Conclusions

These test photos are essentially straight out of camera JPEGs. No effort was made to clean up noise, sharpness, color, contrast, texture, etc. so these are quite unsightly as-is. Any photo taken with a camera (film or digital) needs some amount of work to be developed into a pleasing photograph. These have the absolute minimum amount of processing to share across the Internet.

I'm used to shooting a lot of work with my kit telephoto lens and I have learned to mitigate its shortcomings quite significantly. These photos are pretty crude, and I would say that there are a few instances where the telephoto adapter can be improved; but by and large any improvement attempt is much better addressed by simply cropping in on an un-adapted lens.

Test shooting conditions aside, there is no doubt that this adapter is not helpful, and simply cropping will provide vastly superior results.

Don't bother with this lens.

The least amount of negative distortion and image degradation occurs at widest focal lengths on a given lens, and it immediately gets unusable on a dedicated telephoto lens. Even the Internet's most hated lens, my EF 75-300 mm, is far superior - and it can be picked up used as low as $25-60 on eBay or $60 on KEH or MPB.

Save the $15-35, and shoot for a kit telephoto between $25-60 used, or under $200 brand new.

There's More:

The photography community exhibits an incredible amount of gate keeping. That is: advanced users disappointingly often provide intellectually dishonest, lazy answers to novice shooters that give a perception that newcomers are not worthy of attaining high-end image quality without paying a toll of incredible expense or sheer luck in gaining experience from rote practice. In the case of this test, folks will suggest incredibly expensive lens options and discount the value of kit telephoto equipment, even though there are many truths to the image quality differences between kit lenses and advanced/pro gear.

That is not my intention with this review. There is value in using most basic gear. Of course if one has the means, a middle of the road package will provide plenty of quality to bolster success in a hobby without breaking the bank. In many cases, however, there is plenty of room to grow with absolute beginner gear on the lowest end of the budget spectrum.

Again, this telephoto adapter lens is not worth it.




Monday, November 30, 2015

FSU - UF Football Rivalry Stats

Rivalry week is behind us and the trash talk is still going strong. RIP in peace my news feed - and my team won.

There's a bit of chatter about the all-time series record that they are indeed winning, but I wanted to look a bit further into it.

It turns out that, they aren't just leading the stats, they are pretty damn far ahead. However, the bulk of this comes from the early days of football at Florida State - but is it ridiculous to quote statistics from the 1950s and 60's? I'd definitely say, "Yes and no."

I don't mean to be any more of a revisionist by asking this question than say a team whose only score was produced by the defense. Let's just look at some numbers.


I've shown my work in case you want to review. Holler if I missed anything - I haven't double checked it.

If we try to identify a "Current Era" to measure the teams against each other, I found that the two teams are unbelievably close competitors.

Win/Loss Records


Looking at the all-time standings, UF took an early lead, and jumped ahead in two streaks in 1968-75, and again in 1981-86. Across all time, UF is in a commanding lead, sitting 10 wins ahead of FSU with a record of 34 wins, 24 losses, 2 ties, and one Choke at Doak.

Since I was born in '83, most this sounds pretty thin - especially coming from kids who weren't even alive when the Simpsons was a well established cult classic.

Let's try to start in somewhat more recent times, like from the beginning of the Bobby Bowden era, in 1976.


Despite 4 decent runs on both sides, FSU leads the series by 3 wins since 1976.

To be somewhat fair, let's pick another circumstance to change balance this investigation. I'll try again at the beginning of the Spurrier era, starting in 1990 - at least it's closer to the birth date of most college kids now.


No change. FSU still leads the series by 3 games.

Yeah, I agree it's bullshit to discount 15 losses and a tie, but we're just examining numbers here. Also, I don't see how the argument that, "games played in the 1950s and '60s are more relevant," holds any more weight than, "current history is more relevant to reality."

Let's take at another metric to see what's going on across multiple games.

Running Score Distribution

Example: Starting at 0, if UF wins with a score of 14-7, UF is awarded 7 points, and FSU begins with -7 points.



Across all time, FSU is just dominated by UF who ran up a score of 200 additional points over FSU - mainly between the first game in 1958 and the year before Bobby Bowden arrived. Good job, our collective grandparents who probably weren't associated with either school!

Let's see what has happened in more recent history.


Looking at the Bowden era to present, the overall score between the two teams puts UF in the lead by 3 points. THREE!

How about the Spurrier era to present?


It's a goddamn tie! Since 1990, FSU and UF have scored the same amount of offsetting points.

Someone please check my work. That's weird.

Conclusion

Okay, I admit rivalry isn't rivalry without context of history. I'm confident that the next few seasons are looking fierce for my Alma mater, and I don't doubt the ability to overcome those very early defects in the coming years. However, it's fair to say both teams have had some incredibly strong runs in recent history, and these quick illustrations have a surprising degree of balance.

Tuesday, March 24, 2015

Color Development: Digital Color Basics

I intended to just write about how to create colors and suggest some cool tools I've found, but this got out of control. Check out the next article:

Color Development: Tools and Methods

There are various ways of building colors for a project or symbol. For general, rapid selection, users are often offered a basic color palette to select a color:

Default color palette from ArcMap

Color palette from Word

Even MS Paint offers a few basic colors
Notice that each of these provide an option to edit the color further.

Color Values

Colors commonly have names: like Black, White, Red, Orange, Yellow, Green, Blue, Purple, Cyan, Magenta, Olive Drab, etc.
! Specifics aside, Black, White, and shades of grays are referred to as colors here
Various environments like CSS, and HTML accept some reserved names to act as color values, however those names correspond to very specific numeric values (discussed below), and can be easily referenced on lists like this one. A color isn't "like red" to a computer. It's Red, or it's not.

In the world of coding, there's a need to describe color in a more articulate way than just names. Due to the diverse nature of how light acts (See Further Reading, at the end of this article), there are also a number of different methods that programmers and graphic artists use to build and digitally represent color. Although the various methods may describe a color value differently, they are basically just providing a group of three or more numerical values that act as measurements of various criteria that go into building a representation of color. There are four types of units you may expect to see in these groupings:
  • Percentage - values from 0 to 100%
  • 8-bit - Values from 0 to 255
  • Hex - Values from 00 to FF
    • As in 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, 11, 12, etc.
  • Degrees - Values from 0 to 360º
Zero will always equal zero in any of the first three modes, but the "full" value values will be either 100%, 255, or FF. Those three are all equal values, written in different base units; in the same way that a measurement of 10 centimeters  is 100% of 3.93701 inches.

I'll get to degrees later in HSV/HSL.

Color Models

RGB

RGB Selector in ArcMap

The RGB triad stands for Red, Green, and Blue. Colors in this model are altered by adding or subtracting values in for any of the three primary color channels. As an "additive model," greater values result in brighter color instances, and lower values result in darker colors. This is based on a model of emitted light, where mixing red, green, and blue light produce the color white.

Users can adjust the sliders in this interface to control values of each of these channels between values of 0 and 255; where 0 = no value, and 255 = the full value of a given channel.

Alternatively, users can type a number they have in mind - this is particularly helpful when one wants to jump between increments of a values when searching for a color to use (e.g. changing the red value from 10, to 20, to 30, using the keyboard's number pad).

Color values are read as (#, #, #) or 
(Red value, Green value, Blue value). Since the RGB model is 24-bit (16.7 million possible color combinations), the values in each of the three channels will be some combination between 0 and 255.

As the example above illustrates, to build the color Red, tune the Red channel all the way up to 255, and leave Green and Blue channels at 0 since there should be no other color in Red but red. Done. Aside from various settings on your personal monitor, this is the standard, globally accepted, fullest possible value of Red.

Mixing two of the primary colors, Red, Green, or Blue produces
the "additive secondary" colors, Cyan, Magenta, and Yellow.
Mixing all three primary colors produces White.


The value (0, 0, 0) produces Black (the absence of light), and (255, 255, 255) produces White. Shades of gray are produced by matching all three values from (1, 1, 1) (darkest gray but not Black) to (254, 254. 254) (lightest gray but not White).



Back to our example of building the color Red, adding some value to the Green or Blue channels will yield some other color that may look reddish, but it isn't Red.

Additonally, the ArcMap interface gives you hints as to what other colors can be created from the current settings. With Red at 255, adjusting the Green channel will produces shades of red, through orange, and finally arriving at Yellow. Alternatively, adjusting the Blue channel will move through shades of reds and pinks and finally arrive at Magenta.

This is a good model to use to begin learning how to mix colors, but it's not my preferred model to use because it's tricky to imagine how to add a little red or remove a little green to target your preferred color.

CMYK

CMYK is a subtractive color model, used most often when printing is involved as an output medium. Pigments and inks absorb light (as opposed to how RGB works to emulate emitted light), so this model helps printers create the correct color with their ink print heads, as opposed to a computer monitor's LED pixels.

CMYK stands for Cyan-Magenta-Yellow-Key, where Key represents a black ink head. Black is used in printers as an efficient and controlled way to provide shadows, dark values, and black text to the printed material.

Just like mixing color with paint (where light is absorbed and the remaining wavelengths provide the observer perceived color), the CMYK model begins with the color white. Value is added to the channels, and lightness is removed. So zero values are White, and full values in all channels produce Black. Additionally, a full value in the Key channel also produces Black, regardless of the settings in the CMY channels.

Notice that the secondary colors in the RGB model produce Cyan, Magenta, and Yellow. Conversely, mixing two primary colors in the CMYK model will produce Red, Green, and Blue.

This is also not my favorite model to use to produce color, and it's generally just a pain in my ass when I'm printing large format maps.

HSV / HSL / HSVa / HSLa

HSV dialog in ArcMap

HSV selectors in Gimp, adjacent to RGB selectors
with the Hex code value, below

HSLa Selectors in Inkscape

These triads stand for Hue-Saturation-Value, and  Hue-Saturation-Lightness. The following "a" stands for Alpha, which is a metric of transparency. Sometimes this is included as a channel, sometimes it isn't. It's very important to recognize whether or not it's included. If you don't want to bother, make sure it is set to 100%, or 255, or FF.

This model is a bit tricky, so let's break it down.

Hue can be though of as the root color you're looking for on the color wheel: either a reddish, or a blueish, or a yellowish color, etc. The wheel starts at 0º, and continues through oranges, yellows, greens, blues etc, and eventually ends back at red at 360º; which also = 0º, but that's okay because both values are the same red.

A color wheel with 0° and 360° at the 12:00 position


Next, Saturation describes how muted gray (lack of color) or vibrant (fully colored) a color should be. This is usually a percentage, where 0 means no color is present and 100% represents the full colored potential of a color.

Examples of saturation gradients for several hues,
which correspond to the color wheel, above
! Note that the units can change between software packages. Inkscape uses 8-bit values (numbers 0-255) for each, HSLa channel. So a Hue value of 255 will correlate to 360° on the color wheel, and a 255 in the Saturation channel is equivalent to 100% saturation.

If you are building colors that are way off, you may need to check your units and convert when necessary.
Finally, Value and Lightness and are.. Also a bit tricky. Go ahead and read about the differences over on Wikipedia. Essentially, this component controls how light or dark a color will be.

Zero values in both HSV and HSL produce the color Black, regardless of Hue or Saturation settings.

The main difference between Value and Lightness is that the highest Value setting produces a fully saturated color (see the Saturation illustration above, and the ArcMap HSV selector below), and



the highest Lightness setting will produce a pure White color (see the Inkscape HSL selector below). A fully saturated color using HSL will have a Lightness value of 50% - or 128 (as Inkscape uses 8-bit values for each channel).


Hex

I didn't really touch on Hex, other than that it is another method of preserving a value of color. There's not much to it. It essentially is just a concatenation of the three or more channels in the fewest logical number of characters.

Short answer: Hexadecimal notation throws a couple of letters after the number 9 so each significant figure can be one of 16 possible values:

0 1 2 3 4 5 6 7 8  9  A  B  C  D  E  F
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Hex usually stands for RRGGBB, and sometimes for RRGGBBAA (for Alpha).

To find the Hex value of Red using the common six-digit RRGGBB method, first find the RGB value of Red:

  (255, 0, 0)

Then convert each value to its hex equivalent:

(FF, 00, 00)

Finally, remove the formatting, and stick the three values together:

FF0000
123456

For Inkscape and the few other examples of hex RGBa values, just throw another set of F's on the end. Here, we'll have a fully opaque value of Red:

FF0000FF
12345678

HTML & CSS

There are two ways to write hex color values in CSS and HTML.

There's the long way (again, using Red as an example):

#FF0000

And when all three RGB channels use doubled digits for their channel, you can use a 3-digit format:

#F00

Additional examples:

#112233 = #123
#00FF00 = #0F0
#333333 = #333

Further Reading

The physics of light are fascinating. I learned a lot about the subject in my various Remote Sensing courses in grad school, and in the practice of GIS and graphic design over the years. There are plenty of other great resources to use on these matters. Here are a few search terms to consider:
  • Emitted vs. Reflected light
  • Additive vs. Subtractive color
  • Color models
  • Primary color of light and pigment
  • Light vs. Pigments
  • Pigment vs. Dye
  • Blackbody radiators
  • Color theory

Friday, January 14, 2011

Java Introduction / Cheat Sheet

› I will continue to add to this article over the coming weeks.
Setup:
You'll need to download and install two things to get started coding:
  • Java SE 6 JDK (Java Platform, Standard Edition 6 Development Kit)
    - Choose your operating system and platform and download the JDK version, not the JRE (only the runtime environment)
  • Eclipse IDE (Integrated Development Environment)
    This is the interface through which you will be programming, compiling, and running and testing code


Hello world:
This simple program will output the text, "Hello, World!" (without quotes).

The program is composed of a class definition named HelloWorld.  The HelloWorld class runs from the first opening brace ({) to the last closing brace (}).  All Java programs use class definitions.

The next portion of code sets up the main method.  Methods define the operations that an object or program will perform.  The code in a method lives inside another set of braces ({}) In this case, the program is simply printing a line that says "Hello, World!" using the println (print line) method of the out object, which is stored in Java's predefined System class.
public class HelloWorld
{
    public static void main (String[] args)
    }
      System.out.println ("Hello, World!");
    }
}
That's it! This Java program contains just three simple steps:
  • Define a class named HelloWorld.  Its code is included between two braces
  • Define a method named main that has a few settings that aren't really important to know about yet, but can be explained a bit further in this Java tutorial.  The code between the method's braces will be instructions to be performed by the program
  • Call the println method from the System class's out object to write "Hello, World!" as output.  This instruction is ended with a semicolon (;)

Comments:
Comments are an efficient and important way to provide documentation and insight as to what your program is doing at any given point in the code.  Be sure to include detailed descriptions to help you or another programmer when returning to review or revise the code at a later time.


// Single-line comment

// This can be attached after some code on a line.
// Anything after these slashes on the same line 
//   will be omitted

/* A comment spanning several lines:
EVERYTHING between these comment marks will
be omitted by the Java interpreter */


Variables & Constants:
Variables and constants are places in code to store information for the program to use and reference.  Variables are dynamic; in that once they are created they can remain blank or equal to zero, or they can hold text or numeric information or be set to true or false.  Examples include any kind user provided data, an e-mail address, age, phone number, number of stars given on a restaurant or movie review, a program iteration number, amount of records in a database, etc.  Further, they can be changed at any time, or erased and set back to their original "blank" or "null" state.

Constants, on the other hand, can also hold data, though these will be set once when the program begins and will remain the same throughout the program's life.  Examples include the number pi, thresholds (1 millionth customer at a store, the upper limit of $1.00 on the Price is Right Showcase Showdown), freezing/boiling points of water in °F/°C/°K, etc.

Identifiers: are variables, constants, reserve words, etc.
  • Alphanumeric, underscores (_),  and dollar signs ($)
  • Case sensitive
  • Can be any length
  • Must not begin with a number
Acceptable:
int_Value, String3, $LakeSize, _StreamSize, $100, a_very_long_stupid_string_that_should_be_shortened

Unacceptable:
int-Value, 3rdString, Lake Size, _Stream#Size...


Escape Sequences:
This is a list of special characters that can be used in a program which would otherwise cause a compile-time, run-time, or logic error if entered directly.  For instance, entering """ (a string containing a double quote character) will cause a compile-time error because the the middle quotation mark will be interpreted as the end of a blank string.  Instead the code would need to be entered as "\"".

SequenceOutput
\bbackspace
\ttab
\nnewline
\rcarriage return
\"double quote
\'single quote
\\backslash

Conditional Operators:

Equality / Relational
OperatorValue
==equal to
!=not equal to
<less than
<=less than or equal to
>greater than
>=greater than or equal to


Logical
OperatorValueUse
!NOT! a
&&ANDx && y
||ORx || y




Resources:
Java Foundations, 2nd Edition
John Lewis, et. al



Tuesday, January 26, 2010

Research Needs for Water Resource Applications of GIS

Water resources are challenging to model in a geographic information system because these features are often so temporally variable. John P. Wilson, et al. discuss in the article, “Water Resource Applications of Geographic Information Systems” many methods of water resource management and assessment. Often, these topics reiterate the relation of data sharing with the increasing level of technology. These advancements allow a greater number of less professionally trained individuals to contribute what can possibly be high quality data with a varying degree of uncertainty. For this reason, future technology will need to incorporate these individuals’ level of training and geographic and scientific understanding into the framework of tool building. Thus interfaces for using such tools must be created to suit a wide audience efficiently. Otherwise, difficulty in using technology directly translates to uncertainty. Scale is addressed often as well when reviewing other issues ranging from the integration of spatial data acquisition technology to data sharing practices.
Primarily, it is stressed that raster grid resolution selection should attempt to match the size of the smallest features that are being modeled.  Accuracy of these resources is quickly degraded due to excess aggregation of topographic features.  Generalization in this regard minimizes the number possibilities of variation for a given area where a smaller stream feature, for instance, could exist in reality.  Using a raster resolution of 30 meters rather than the 2-10 meter resolutions suggested by several studies mentioned easily smoothes over smaller changes in topography.  Further, a 30 meter cell size yields only 21% - 30% of correct slope gradients.  However, if only larger (major) features are required to be analyzed or communicated, 30 meter resolution can sometimes be quite sufficient.

Many water resource applications are GIS-based.  The National Hydrography Dataset is a prime example of how to digitally store and communicate a hydrologic network by logically displaying geographic information with its organizational and descriptive parameters embedded within in a GIS environment.  An example of temporal water quality monitoring is the Florida DEP's Watershed Monitoring program and EPA & FDEP’s STORET (“STOrage and RETrieval” database) program, where water quality data from across the state of Florida is collected, managed in databases, and can be served internally or publicly via internet mapping service, while being provided to in-house personnel for GIS analysis via ArcSDE & ArcGIS Server. Advancements in technology such as these increase the dissemination of information to a growing number of skilled as well as improperly trained stewards and contributors of information.  Increased availability must be mirrored by an increased accounting of data collection information in the form of metadata to ensure reliability.  A method of controlling uncertainty for every step of data collection is currently available by reporting appropriate metadata parameters prior to distribution of any data.  Although this information is mainly included on official final-drafts of published datasets, more can be done deeper within an organization to include metadata to aide in the quality assurance of final versions of disseminated data.

Overall, it will be important to develop efficient models of water resources that can be used by an audience with contrasting degrees of familiarity with geographic information.  By conducting further research on the most effective way to properly incorporate data with varying degrees of uncertainty, as well as investigating the most efficient scales at which modeling hydrologic networks should take place, the GIS community can continue to accurately model water resources in the future.

Monday, January 25, 2010

Challenges in using GIS for Emergency Preparedness & Response


My sister and myself after hurricane Andrew in 1992, south Miami

Hazards are common to every location on Earth and often shape the characteristics that define a given landscape. In the US, California is well known for earthquakes and wildfires, Florida is known for hurricanes, and the Midwest is specifically referred to as “tornado alley.” Of course these occurrences are by no means limited to these locations, and these locations are not limited to these natural hazards. Hazards include any natural event (meteorological, geological, hydrological, biological, etc.) or human-induced process or phenomenon (war, industrial accidents, etc.) that may potentially impact, endanger, or threaten lives, resources, and the environment. Having a sound understanding of how such events impact and shape the geography of a region is essential for efficient planning and mitigation of the affects of damage and loss of life when these events arise in the future. Using GIS as a tool to analyze the factors associated with a specific hazard allows for the rapid assessment and response to costly situations. Although GIS can be used as a powerful tool to analyze information in attempts to reduce risk, damage, loss, and recovery time resulting from any hazard or combination of hazards, the limitations of time and resources frequently characterize the overall usefulness of GIS in three general stages. The May 2000 ESRI white paper, “Challenges for GIS in Emergency Preparedness and Response,” explains the stages of a hazard event and continues to discuss challenges for GIS in management and analysis of information during these periods.

Prior to an event, proactive planning assesses potential risk, and whenever possible evacuation procedures are imposed to limit the affects of the hazard. During this stage, time is limited as the hazard becomes imminent, and valid information is necessary to be produced hastily. The urgency and importance of such information can be exemplified in a situation where rising flood threaten a populated location. In this circumstance, it is imperative to provide planning and rescue efforts a list of affected roadway names. To produce accurate information, a project must begin with accurate and up-to-date information. If changes in a city’s roadway network have been added or altered without being reflected in a GIS coverage, it could be possible to send responding emergency vehicles into flooded areas. Risk mapping and emergency simulation require the most current information. Reactive response begins when the event begins. After the event has ended, another reactive response situation begins to unfold. During this subsequent stage appropriate resource management and planning must occur to efficiently being the path to rebuilding and recovery. Overall, there is a need to move from reactive response to prevention and planning to me most efficient in minimizing loss. Adhering to a proactive planning method will reduce the general cost of evacuation when that time presents itself in the future.

The white paper discusses a number of important factors concerned with the acquisition and integration of spatial data in an emergency planning environment. It is necessary to identify what sources of data are available, what kinds of data needs to be obtained, who needs access to which types of data, what problems to expect when integrating sources of spatial information, and what amount of uncertainty comes with a dataset, and to what extent is the uncertainty acceptable. When working with several agencies in an emergency, it is important to have strategies in place to avoid the loss of efficiency due to poor or difficult methods of integration. One solution to this comes from the advancement of distributed computing systems. Highly efficient, temporally narrow analysis can be conducted on interactive geographic information systems via a link to immediately updated remotely sensed information in the field, however if several organizations are unaware of how to share this information, efficiency of planning and response can be significantly hindered.

The article mentions that dynamic representation, or temporal visualization, is an area that needs to be researched further, and that GIS is not the best method for representing temporal data. This was written in 2000, however, and there have since been a number of powerful options which allow for the integration of GIS information with other software packages to create dynamic maps to render time-lapsed data, etc. quite effectively. Such tools have been built directly into ArcGIS for the past few versions that create powerful digital video with ease from even the most simplistic of datasets.

Finally, scale is an issue that must be addressed in emergency management in GIS. One main problem is that DEM datasets can be inadequate for analysis in (certain) cases – especially when modeling hydrologic events. Shuttle Radar Topography Mission (SRTM) data comes in 30 meter and 90 meter resolutions. Emergency management often deals with larger scales than this would prove useful for more than very basic analysis. Higher resolution Lidar would be a more appropriate choice to acquire in order to perform surface analysis to model emergency situations involving flooding, etc.

GIS attempts to reduce the amount of risk, damage, loss, and recovery time resulting from many different hazards in the field of emergency management. There are many ways to plan proactively to contribute to a safe and efficient means of protecting society. Keeping up-to-date records and communicating with other agencies are some of the most important issues to consider to provide a well prepared emergency response strategy that will minimize loss for many affected parties.

Saturday, January 23, 2010

Multispectral & Hyperspectral Remote Sensing Image Extraction

Multispectral sensors such as the Landsat series, SPOT, IKONOS, and QuickBird acquire anywhere from three to ten simultaneous bands of information across a scene.  Each of these bands cover a relatively broad spectral range of electromagnetic radiation observation.  Hyperspectral remote sensing, as its name implies, is generally composed of a greater number of spectral bands which observe a more precise (narrow) spectral threshold.  The MODIS sensor uses 36 bands, while NASA's AVIRIS sensor captures as many as 224 bands.

John R. Jensen continues to describe in his book, Introductory Digital Image processing: A Remote Sensing Perspective, two methods of multi- and hyperspectral image acquisition methods: the whiskbroom system, and the linear and area array technique.  In both methods, instantaneous field-of-view (IFOV) radiant flux – observed reflectance from the Earth's surface – is passed through a spectrometer in order to disperse, or separate the light into separate bands; ranging from blue to near infrared (NIR) and IR wavelengths, which are passed onto a spectrometer where it is dispersed and focused onto a array of detectors which digitally record the field of view.  The whiskbroom method uses a rotating mirror to reflect and direct radiant flux through the spectrometer to a linear array detector which individually measures the value of radiation of each band that has been separated.  This technique is best suited for capturing broad spectral ranges and is utilized by multispectral sensors such as Landsat MMS and SPOT, etc.  These sensors undersample the observed radiant flux by making only a few measurements from wide spectral bands; as wide as several hundred nanometers which may cover more than one color of the spectrum simultaneously.  Although the use of a dispersing element is similarly used in each method to separate incoming light into individual bands, the alternative method of does not use a scanning mirror; thus allowing a longer amount of time for a detector to record the incoming radiant flux of a given area.  This extra duration of detection yields improved geometric and radiometric accuracy.

These methods have dramatic implications on the type of information that is produced.  The varying techniques influence spectral, temporal, radiometric, and even spatial resolution of a produced image.  Various types of investigation require unique parameters in the type of data that will be used in analysis.  Having an understanding of the different types of information that are produced by multi- and hyperspectral imagery with a respect to ground conditions that are being observed will ensure the most accurate results are obtained during image analysis and exploration.

The process of extracting information from multispectral and hyperspectral imagery are largely similar, however there are a few preliminary steps one must complete before analyzing hyperspectral datasets.  Various forms of calibration – radiometric, geometric, etc. – are common between these two types of imagery, however the larger volume of highly specific spectral bands associated with hyperspectral imagery permit the construction of "spectra" that closely resemble the quality of spectral signatures captured by spectroradiometers in laboratories.  Further, initial image quality assessment of hyperspectral can be a much more tedious undertaking, although it is occasionally possible to use hyperspectral images with poor quality for atmospheric correction.  Due to this more time consuming and redundant task of visual examination, many image processing packages have animation functions that provide a more efficient means of inspecting up to hundreds of images in a single session.

Overall, the dimensionality is the most distinguishing characteristic between these two types of remote sensing techniques.  The low data dimensionality of multispectral imagery is significantly more accessible and less difficult to work with in basic research due to the low number of spectral bands that make up an image.  The higher number of bands/images involved with hyper- and ultraspectral imagery generate numerous obstacles, ranging from data storage to processing abilities.  Numerous images of highly specific spectral bands – often representing bandwidths of just 10 nm each – produce certain amounts redundant information.  Statistical analysis aids in identifying, and removing or transforming data in order to reduce the dimensionality of the overall hyperspectral dataset, improving the efficiency of exploration and analysis.  Although there are indeed variations that exist with regard to image processing techniques between these two types of remote sensing data, the causes again are largely due to dimensionality.  An analyst must decide whether few, spectrally broad images or numerous and specific images will best suit his or her analysis.

Saturday, January 16, 2010

An Essay on Scale



Scale can be described as the level or extent at which observations or phenomena are represented geographically or temporally.  Scale can be described in aggregate or specific terms.  Generally, one can describe varying levels using such terms as “individual, household, neighborhood, city-wide, nation-wide, daily, annually” etc., or conversely by using more discrete definitions to quantify the physical dimensions or duration of represented events.  In regards to cartography, scale refers more specifically to the former; or the ratio and relationship between corresponding elements in reality to those represented on a map.  This ratio can often be expressed as a fraction – for instance 1/100,000 or 1:100,000, where one unit of measure on a map is equal to 100,000 of the same units in reality.

When obtaining data, it is important to consider scale to determine the appropriateness of a GIS coverage for a given project.  For example, analysis conducted on a large scale – such as a parcel of forest land – requires data obtained at a high resolution.  Whether these data are vector rivers or roadways, digitized at a high resolution or captured using many GPS observations, or the data have been obtained by using high resolution raster imagery or interpolated surfaces, it is important for the data to provide enough information about a geographic extent to give a suitable representation of reality for a desired level of study.  Conversely, the same high resolution data may not be necessary for analysis of an area at a smaller scale – such as a state-wide or regional analysis of forested lands.  In this smaller-scale example, data obtained at a scale of 1:100,000 would be more practical to obtain and utilize for analysis, whereas data for parcel-level analysis may need to be obtained at a scale greater than 1:10,000.

These examples briefly illustrate how the accuracy of data is defined by scale.  If features are digitized at a scale greater than 1:10,000, the layer becomes a more accurate depiction of ground conditions as the project’s scale decreases – the 1:10,000-scale stream features are much more accurate at 1:100,000-scale.  In contrast, features digitized at 1:100,000 quickly loose accuracy as the project’s scale increases to parcel-level.  Further, a high resolution raster dataset may affect the efficiency of running analysis over a wide extent, while a low resolution surface may not appropriately represent the events occurring across a given area.  For these reasons, it is apparent that scale characterizes the degrees of suitability for which data is valid and useful.

Scale is an important issue to consider in the world of environmental and ecological studies.  One frequently occurring matter is a mismatch between the scale at which ecological processes occur and the scale at which decisions on them are made regarding these processes.  Many parameters influence the product of any project, and these parameters time and again lay at varying levels of scale.  Reading materials from class explain how focusing upon a single scale may neglect important interactions that are vital to the complex issue at hand.  Further, examination of an ecosystem may be performed at too large or too small of a scale to fully observe an occurring phenomenon.  Finally, the modifiable aerial unit problem (MAUP) is another example of scale-based error that emphasizes the previous challenge; however may be more of a matter of preference to meet a desired result.  The problem stems from the imposition of artificial aggregation of an unbounded area.  When a continuous area is artificially bounded, the results can be unavoidably skewed.  Altering scale, in this matter, allows control of the resulting spatial patterns.  Basing policy on assumptions containing overlooked conditions can easily impose unpredictable and degrading consequences on the environment and society; thus, scale is an important feature to observe and regard when examining spatial information.

A few years ago I contributed to a pilot project at the Florida Department of Environmental Protection to update Florida’s version of the 1:24,000-scale National Hydrography Dataset (24k NHD).  During this project I encountered a fundamental issue previously discussed.  At what scale should features be digitized to provide a valid 1:24,000-scale coverage?  It was determined that digitizing state-wide hydrologic features be captured most efficiently and validly by digitizing at a larger scale: between 1:15,000 to 1:17,000.  By increasing the scale, a slightly more accurate depiction of ground conditions are observed and obtained for the 24k dataset, while providing enough generalization to be able to progress across vast landscapes of the state with some amount of speed. Additionally, several issues of scale were discussed in the article, “Seagrass as pasture for seacows: landscape-level dugong habitat evaluation.” Raster imagery of seagrass meadows were obtained at 200 meter resolution.  At this resolution the continuous nature of seagrasses were suitably sampled, and analysis was performed appropriately.  It was not necessary to acquire imagery at a larger scale, as patches of seagrass species were easily captured at this resolution, while a larger resolution would begin to overlook patches of assorted species.

Remote Sensing for Landscape Level Dugong Habitat Evaluation

This is a review of an article presented to Dr. Yang's GIS for Environmental Modeling class at Florida State University in the spring of 2008.
Sheppard, James K., Lawler, Ivan R., Marsh, Helene. (2007). Seagrass as Pasture for Seacows: Landscape-Level Dugong Habitat Evaluation. Estuarine Coastal & Shelf Science, 71(1-2):117-132.




The dugong is a cousin to the West Indian manatee, which feeds on specific types of seagrasses in area around northern Australia, Indonesia, and along similar latitudes along coastal areas of the Indian Ocean.  This study uses GIS to determine which specific types of seagrasses are preferred by grazing dugongs in waters off of Queensland, Australia.  GIS is used to observe remotely sensed near infrared spectroscopy to quantify the composition and configuration of seagrass communities.

Dugongs are tagged with GPS tracking devices, and their locations are tracked using the Animal Movement Analyst Extendsion in ArcView.  After three months of tracking, a study area is developed from the many line features created by the movement of the animals to estimate the extent of popular grazing locations in Hervey Bay.  Several field methods are used to capture samples of seagrasses at various locations throughout the study area – ranging from intertidal treks in shallow water to sample plant species by hand, to using submarine video equipment to analyze the plant structure from a boat.  Both methods use GPS to derive latitude and longitude data and to record other information.  Further, a steel sediment grab is used to sample benthic composition and sediment nutrients.

The information is loaded into a GIS where bathymetry, seagrass cover, and nutrient profiles are created from the GIS point data that was captured.  Each of these layers are interpolated into a raster surface using the Kriging method, as it yields the most precise output for the data captured.  Nutrient analysis is conducted with Near Infrared Reflectance Spectroscopy (NRIS) due to its ability to identify the composition of organic samples very efficiently.

The analysis sampled five seagrasses, ranging in levels of nitrogen, starch, and fiber.  The dugongs convert nitrogen into protein, and use starch for energy.  Fiber is a tertiary element in the seagrasses that is difficult for the dugongs to digest, therefore it is mainly avoided in large amounts.  The analysis in this study confirms these findings from past research.

Remote sensing in this study is limited in evaluating biomass and species at low densities.  More valid results are easier to obtain when higher concentrations of any particular species exist over a larger area, though patches can be discovered and accounted for when sampling.  This aligns well with the general structure of seagrass meadows.  Further, remote sensing is limited to shallow water, or where seagrass stalks reach to shallow depths of water were the electromagnetic wave can penetrate and return to the capturing device.  Water quickly absorbs much of the beam emitted from sensing devices.  In addition, turbid water is another limiting factor to using remote sensing in open, flowing water.

Overall, this is a very interesting article that touches on several powerful uses of GIS and remote sensing technology.  The biological analysis addressed seems to get moderately complex, however the conclusions are clearly represented and are easily interpreted in context with the spatial component of this research.

Thursday, January 14, 2010

An Essay on Spatial Interpolation

 Spatial interpolation is the technique of estimating a complete, continuous raster surface based off of a patchwork of known point values captured across a surface in reality.  The surface that is created attempts to represent the gradation, or smooth progression between varying spatial values found in real-world observations.  Interpolation is a powerful visualization method used to make sense of point data that is otherwise very difficult to envision and interpret.  Applications of such raster surfaces include maps of population densities, precipitation levels, temperature differences, etc.  This technique has nearly limitless uses and can create a surface for any spatially-based phenomenon – one of the most notable and easily interpreted of which is an interpolation of elevation values.  It is possible to use interpolation techniques in a vector environment using a triangulated irregular network (TIN), however much of my experience has remained in the world of raster based interpolation.

Spatial interpolation works by estimating values for the unknown, unsampled area between two or more known points.  A basic method of this is to derive isolines between sample points – this can even be done by hand.  I have performed a manual contour interpolation in a meteorology course in the past, where isopleths – lines of equal barometric pressure – were estimated from a map containing only weather station point data.  These lines were sketched, and another layer – frontal boundaries – could then be inferred from the location and orientation of the isolines.  Although this exercise included only a hand full of points, a surprisingly accurate map could be produced by hand, however the addition of more points can quickly force manual interpolation to become time consuming and increase chances of error.  Another method is to create a continuous surface – usually using advanced computer algorithms to automatically calculate the hundreds, if not millions or more raster cells that make up the interpolated surface.  My experience with these types of raster surfaces begin with a project conducted for the Florida State University Environmental Service Program in 2006, which used raster surfaces to model the efficiency of the University’s recycling program on campus, and to suggest new recycling bin locations.  Point locations were collected for centers of student population around campus – classroom buildings, libraries, parking lots, dorms, etc. – as well as for trash can and recycling bin locations.  Each point was assigned an appropriate weight value, and a raster surface was created for each layer.  The interpolations for each layer of centers of student population were combined using a raster calculation, and contour surfaces were created and overlaid with the raster surface of recycling bin distribution on campus.  It was then very easy to observe how the centers of high student traffic compared with the current distribution of recycling facilities on campus.

One final description of spatial interpolation is enforced by Tobler’s First Law of Geography where locations close to each other have more in common than locations which are farther apart.  Spatial autocorrelation, a formulation of Tobler’s Law, continues by measuring how clustered (positive spatial autocorrelation) or dispersed (negative autocorrelation) a set of spatial features exhibit.  These ideas illustrate the significance of neighboring points (or point sets) upon one another and how neighboring points effect the resulting interpolated surface.  More advanced interpolation techniques using these concepts will be discussed.

As with any area of scientific estimation and modeling, there are many issues that affect the accuracy of an interpolated raster or vector surface.  Basic affects stem from any combination of the number of points used for interpolation (the more, the better), and the distribution (positive or negative spatial autocorrelation) or distance between points (the location and proximity of neighbors significantly effect estimations between points).  More advanced effects begin with directional influence, and continue with the presence of barriers, local neighbor under- or overcorrection, and instrument error.  Finally, possibly one of the most important factors affecting the accuracy of an interpolated surface resides with choosing the most appropriate method to perform the surface interpolation.

Due to this great amount of effect that the method of spatial interpolation holds upon the accuracy of the resulting surface, it is important to carefully choose a method that is most appropriate for the nature of the given data.  The class notes discuss in detail the differences between several methods.  Generally, Inverse Distance Weighted (IDW) methods limit the influence of neighbors as their distance increases (implementing Tobler’s Law).  More sample points promote a more smooth surface, however areas of littler or no data will skew the surface toward the overall mean of the dataset, creating holes: an evenly spaced distribution of input points avoids these holes. Thiessen (Voronoi, or natural neighbor) polygons often have odd-shaped boundaries to transition between polygons.  Continuous variables are not well represented.  The trend surface method uses multiple regression (predicting a dependent elevation, Z variable with independent X & Y, location variables) to approximate values; however this method rarely intersects the original point.  Splines are used to interpolate smooth curves, and are best for surfaces that are already smooth.  Kriging is a more in-depth, random, weighted average technique using more advanced algorithms and spatial autocorrelation, best suited when correlated distances are known or if there is directional bias in the data.  Finally, it is important to understand issues associated with exact, and approximate interpolators, as well as deterministic and geostatistical interpolators.

The goal of interpolation is to minimize error.  It is the responsibility of the GIS user to understand the discussed differences between varying techniques used to interpolate surfaces.  Combining a working knowledge of the issues pertaining to spatial interpolation with the resources of the GIS reference information will assist in the creation of accurate representations.

An Essay on Uncertainty in Spatial Data Integration

Spatial data come in a variety of forms from oral or text descriptions and values, to any number of digital representations of the real world.  There are a plethora of techniques used to describe the world in space through raster and vector data alone.  The quality of such data however can be described by addressing four key factors.  Accuracy measures how close data can matches true values and descriptions.  Not all values can be exactly measured.  Due to human error or the detection/precision limits of equipment accuracy can easily be skewed.  Accuracy however, is largely associated with scale – decreasing scale increases accuracy.  Precision – reproducible performance qualities – measures how exactly data measured and stored.  In an assessment using high precision, several errors can be repeated with similar patterns of the same error, however low precision will yield little or no representation to the original error.  Error is a typical deviation or variation from reality.  Finally, uncertainty is the overall doubt or lack of confidence in data.  Though error and uncertainty are similar, the discrepancies are known and can possibly be avoided, where uncertainty deals with the absence of knowing the truth of a situation.  Moreover, spatial data quality is a measure of how well GIS data represent reality.

Due to the fact that a map is a model of reality and that model can never be a completely valid representation of reality, it is important to expect a certain level of uncertainty when working on a project as a quality control or assurance method.  Further, the differences in data types that are attempting to represent the same real-world features inherently exhibit a degree of variation.  For instance a raster image and a vector representation of the same coastline will align separately; by any number of spatial units.  Adjusting the scale at which the features are obtained may alleviate this misalignment.  Combining vector data digitized separately will rarely align perfectly.  Thus, combining two such coverages will result in sliver polygons, disconnected vertices, or polyline dangles.  It will be necessary to use overlay tools – such as a spatial join, union, etc. – to aggregate datasets while avoiding unwanted errors.

Storing information in metadata files is another powerful method that can be used to track errors that are present in GIS application.  Metadata is a means of recording information about a given dataset.  It can describe, among many other matters and parameters, which methods have been used to capture data in a coverage.  Providing such information can easily and efficiently inform others who use the dataset what he or she should anticipate as far as what deviation or error occur.  A lecture in class discussed how improvement in awareness of data quality is necessary, as data quality can have large impacts on geographic data analysis if it is not addressed properly; or even overlooked entirely.

Scale is another issue that may assist in the avoidance of uncertainty.  Determining an appropriate level at which any error that may occur in a dataset will be minimized is a sure way to improve the accuracy of a dataset.

Controlled uncertainty is another spatial data quality issue that works in inverse from the previously discussed methods.  Deliberate degradation of data is used as a mechanism for protecting the data at hand, whether a dataset covers records, or locations whose location or confidentiality may be guarded.  The Fisher reading summarizes well that analysis performed on a project without accommodating for uncertainty will have significantly degrade its validity, and therefore its usefulness is questionable.  By planning for a certain degree of error, it is possible to continue to create valid results.