<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>KenMankoff &#187; Computers</title>
	<atom:link href="http://kenmankoff.com/tag/computers/feed" rel="self" type="application/rss+xml" />
	<link>http://kenmankoff.com</link>
	<description>Antarctica, My PhD, Life, Stuff, etc.</description>
	<lastBuildDate>Fri, 03 Feb 2012 23:04:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Kinect Go Kit for fieldwork</title>
		<link>http://kenmankoff.com/2011/11/11/kinect-go-kit-for-fieldwork</link>
		<comments>http://kenmankoff.com/2011/11/11/kinect-go-kit-for-fieldwork#comments</comments>
		<pubDate>Fri, 11 Nov 2011 23:27:59 +0000</pubDate>
		<dc:creator>Ken Mankoff</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[HowTo]]></category>
		<category><![CDATA[Kinect]]></category>
		<category><![CDATA[PhD]]></category>
		<category><![CDATA[Research]]></category>

		<guid isPermaLink="false">http://kenmankoff.com/?p=4243</guid>
		<description><![CDATA[Following up on my previous post about using the Kinect for earth science applications, I&#8217;m documenting the Kinect Go Kit I built for fieldwork. I travel with two Kinects, two power supplies, and two computers in case one gets damaged or destroyed in the field, although only one computer is in the kit. The Netbook [...]]]></description>
			<content:encoded><![CDATA[<p>Following up on my previous post about using the <a href="http://kenmankoff.com/2011/11/05/kinect-for-earth-scientists">Kinect for earth science applications</a>, I&#8217;m documenting the Kinect Go Kit I built for fieldwork.</p>
<div id="attachment_4245" class="wp-caption aligncenter" style="width: 510px"><a href="http://kenmankoff.com/wordpress/wp-content/uploads/2011/11/top.png"><img class="size-medium wp-image-4245" title="Kinect Go Kit: Top Level" src="http://kenmankoff.com/wordpress/wp-content/uploads/2011/11/top-500x375.png" alt="Kinect Go Kit: Top Level" width="500" height="375" /></a><p class="wp-caption-text">Kinect Go Kit: Top level</p></div>
<div id="attachment_4244" class="wp-caption aligncenter" style="width: 510px"><img class="size-medium wp-image-4244" title="Kinect Pelican Go Kit Case" src="http://kenmankoff.com/wordpress/wp-content/uploads/2011/11/pelican-500x375.jpg" alt="Kinect Pelican Go Kit Case" width="500" height="375" /><p class="wp-caption-text">Kinect Go Kit Pelican Case</p></div>
<p style="text-align: left;">I travel with two Kinects, two power supplies, and two computers in case one gets damaged or destroyed in the field, although only one computer is in the kit.</p>
<p>The Netbook is a cheap $240 computer running <a title="Ubuntu" href="http://www.ubuntu.com/">Ubuntu</a> and the <a title="OpenKinect" href="http://openkinect.org/wiki/Main_Page">libfreenect software stack</a> at a minimum. I have also found it useful to have more advanced data collection software (<a title="ROS" href="http://www.ros.org/wiki/">ROS</a>, <a title="RGBDemo" href="http://nicolas.burrus.name/index.php/Research/KinectRgbDemoV6">RGBDemo</a>, <a title="RGBDSLAM" href="http://www.ros.org/wiki/rgbdslam">RGBDSLAM</a>), and some analysis software (<a title="CloudCompare" href="http://www.danielgm.net/cc/">CloudCompare</a>, <a title="points2grid" href="https://github.com/CRREL/points2grid">points2grid</a>, <a title="Viewpoints" href="http://astrophysics.arc.nasa.gov/%7Epgazis/viewpoints.htm">Viewpoints</a>, etc.). This netbook works fine for raw data dumps from the libfreenect &#8216;record&#8217; program. It can run the more computationally expensive scene stitching algorithms such as RGBDSLAM, but it takes about 10 seconds per stitch, while a more powerful laptop (but still a few years old) can do it at 0.5 to 1 Hz. Since &#8216;record&#8217; collects about 1.5 GB of data per minute, it is good to have a lot of free space on the hard drive.</p>
<p>The plugs and cables are shown laid out below, and in addition, some velcro straps are stored in that compartment, used to attach the Kinect to the tripod arm.</p>
<p>The Pelican 1510 case supports two levels, and the lower level looks like this:</p>
<div id="attachment_4249" class="wp-caption aligncenter" style="width: 510px"><img class="size-medium wp-image-4249" title="Kinect Go Kit: Bottom Layer" src="http://kenmankoff.com/wordpress/wp-content/uploads/2011/11/bottom-500x375.png" alt="Kinect Go Kit: Bottom Layer" width="500" height="375" /><p class="wp-caption-text">Kinect Go Kit: Bottom level</p></div>
<p>Battery #1 is a 12 V 5 Ah sealed led acid battery. It provides &gt;5 hours of Kinect runtime, about equal to the runtime of the netbook.</p>
<p>Battery #2 is 8 AA batteries (12 V), and underneath is an 8 AA battery holder and a battery charger. If I need to turn the Kinect on for a short amount of time and want to travel lightly, these will do.</p>
<div id="attachment_4250" class="wp-caption aligncenter" style="width: 510px"><img class="size-medium wp-image-4250" title="Kinect cable layouts" src="http://kenmankoff.com/wordpress/wp-content/uploads/2011/11/kinect-500x375.jpg" alt="Kinect cable layouts" width="500" height="375" /><p class="wp-caption-text">Kinect cable layouts</p></div>
<p>As shown above the cord to the Kinect can be cut and alligator clips or some other electrical termination can be attached. I often have wall power and have attached clips to the detached plug so I can use it as originally intended. However, when in the field, the clips can connect directly to the 12 V battery or the AA battery pack.</p>
<div id="attachment_4251" class="wp-caption alignright" style="width: 160px"><a href="http://kenmankoff.com/wordpress/wp-content/uploads/2011/11/tripod.jpg"><img class="size-thumbnail wp-image-4251" title="Kinect mounted on tripod" src="http://kenmankoff.com/wordpress/wp-content/uploads/2011/11/tripod-150x150.jpg" alt="Kinect mounted on tripod" width="150" height="150" /></a><p class="wp-caption-text">Kinect mounted on tripod</p></div>
<p>The Kinect Go Kit above is close to the minimum necessary for fieldwork. Things that I would like in it, but are not yet, include:</p>
<ul>
<li>Tape measure</li>
<li>Liquid container (tupperwear) and opaque liquid (or additive) so that any scene can have a defined flat surface</li>
<li>Sling for under tripod to hold battery, netbook, protecting equipment and keeping it off the ground</li>
<li>Counter weight for tripod arm</li>
</ul>
<p>Additional tools I have found handy to have with me in the field include, but are not limited to, the following:</p>
<ul>
<li>External hard disk for backups</li>
<li>Zip-ties to complement the Velcro straps</li>
<li>Multimeter</li>
<li>Spare notebook, perhaps with a more powerful CPU, for scene stitching</li>
<li>Rope or other &#8216;image noise&#8217; for scene stitching with RGBSLAM when working in environments that have &#8216;self similar&#8217; scenes (no good tie points)</li>
<li>Mounting systems for long term deployment</li>
<li>Trashbags for environmental protection</li>
</ul>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://kenmankoff.com/2011/11/11/kinect-go-kit-for-fieldwork/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Kinect for Earth Scientists</title>
		<link>http://kenmankoff.com/2011/11/05/kinect-for-earth-scientists</link>
		<comments>http://kenmankoff.com/2011/11/05/kinect-for-earth-scientists#comments</comments>
		<pubDate>Sun, 06 Nov 2011 02:35:56 +0000</pubDate>
		<dc:creator>Ken Mankoff</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[HowTo]]></category>
		<category><![CDATA[Kinect]]></category>
		<category><![CDATA[Research]]></category>

		<guid isPermaLink="false">http://kenmankoff.com/?p=4162</guid>
		<description><![CDATA[We have successfully used a Kinect outdoors to study ablation on a glacier, map a subglacial cave in 3D, and tested it in a variety of hydrological situations (imaging roughness on the base of a stream, calibrating the Kinect data through water, and imaging surface waves). Results will be presented at the 2011 AGU conference. [...]]]></description>
			<content:encoded><![CDATA[<p>We have successfully used a Kinect outdoors to study ablation on a glacier, map a subglacial cave in 3D, and tested it in a variety of hydrological situations (imaging roughness on the base of a stream, calibrating the Kinect data through water, and imaging surface waves). Results will be presented at the <a href="http://sites.agu.org/fallmeeting/">2011 AGU conference</a>.</p>
<p>There are a variety software interfaces to the Kinect. One high-level tool that is easy to use (binaries provided, no need to compile source, supports &#8216;scene painting&#8217;) is <a title="RGB-Demo" href="http://nicolas.burrus.name/index.php/Research/KinectRgbDemoV6">RGB-Demo</a>. It is a good tool to start with if you want to work with the Kinect.</p>
<p>However, most Kinect software and calibrations so far have been developed by the robotics and computer vision communities. I am grateful for the work they have done, but those communities have different data needs than earth scientists. For example, quadrotor obstacle avoidance (<a title="quadrotor paper" href="http://www.mva-org.jp/Proceedings/2011CD/papers/09-31.pdf">link (PDF)</a>, <a title="quadrotor" href="http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?reload=true&amp;arnumber=5971311">link</a>) has distance measurement errors that appear to be on order cm, but it still works fine as the helicopter avoids obstacles by an amount larger than the error.</p>
<p>Earth scientists should aim for a better model of the world than the one currently provided by the Kinect and its primary users. I suggest recording and storing the raw digital numbers (DN) from the Kinect rather than higher-level auto-calibrated real-world coordinates. It will require more post-processing, but storing the DNs will allow the data to be re-processed as better calibrations are developed. In addition, the low level recorder operates at 30 Hz and the higher level point-cloud products currently do not record data at that rate.</p>
<p>The best supported low-level interface is the LibFreenect Fakenect <a title="Fakenect Record" href="http://openkinect.org/wiki/Fakenect#Record">record</a> program. It dumps the uncalibrated RGB and depth images to a folder at 30 Hz until you kill the process. Uncalibrated means both that the depth data is in sensor units, and that the depth and RGB images are not aligned. You can easily convert the depth data to real world x,y,z coordinates using existing published algorithms (<a href="http://nicolas.burrus.name/index.php/Research/KinectCalibration">link</a>, <a href="http://www.vision.caltech.edu/bouguetj/calib_doc/">link</a>, <a href="http://www.ros.org/wiki/kinect_calibration/technical">link</a>, and many others exist on the web), but importantly the raw data is stored and can be used with better calibrations in the future.</p>
<p>After processing the raw &#8216;record&#8217; data, you can work with the point cloud data or DEMs using a variety of standard software for pointclouds, LiDAR, etc. I have had great success with <a title="CloudCompare" href="http://www.danielgm.net/cc/">CloudCompare</a> and <a href="http://www.opentopography.org/index.php/resources/otforge/points2grid">Poinst2Grid</a>, in addition to custom code in MATLAB, IDL, and Python. A good list of software is available at the NSF <a title="OpenTopography.org" href="http://www.opentopography.org/">OpenTopography</a> site.</p>
<p>To work with the depth data to we initially use the following algorithms found on the various sites dedicated to Kinect hacking. The data provided by these algorithms is sufficient for certain uses, and for testing algorithms and visualizations, while better calibrations are performed.</p>
<p>DN to distance (<a href="https://groups.google.com/group/openkinect/msg/e98a94ac605b9f21">source</a>):</p>
<blockquote><p>k1 = 1.1863d<br />
k2 = 2842.5d<br />
k3 = 0.1236d<br />
Z = k3 * tan( double( DN ) / k2 + k1 )</p></blockquote>
<p>XYZ to world (<a href="https://groups.google.com/group/openni-dev/browse_thread/thread/c2b37ca04ff55257?fwc=1 ">source</a>):</p>
<blockquote><p>Xres = 640<br />
Yres = 480<br />
FovH = 1.0144686707507438 (rad)<br />
FovV = 0.78980943449644714 (rad)<br />
XtoZ = tan( FovH / 2 ) * 2<br />
YtoZ = tan( FovV / 2 ) * 2<br />
X = ( X_pixel / Xres &#8211; 0.5 ) * Z * XtoZ<br />
Y = ( 0.5 &#8211; Y_pixel / Yres ) * Z * YtoZ</p></blockquote>
<p>Question or comments? Post below&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://kenmankoff.com/2011/11/05/kinect-for-earth-scientists/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Kinect Video from Microsoft</title>
		<link>http://kenmankoff.com/2011/10/31/kinect-video-from-microsoft</link>
		<comments>http://kenmankoff.com/2011/10/31/kinect-video-from-microsoft#comments</comments>
		<pubDate>Mon, 31 Oct 2011 17:53:56 +0000</pubDate>
		<dc:creator>Ken Mankoff</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[Kinect]]></category>
		<category><![CDATA[Research]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://kenmankoff.com/?p=4146</guid>
		<description><![CDATA[It has been almost one year since the Kinect was released, and there have been some amazing projects that use it. Microsoft appears to be embracing the hackers and highlights some of the non-video-game related uses in a new video:]]></description>
			<content:encoded><![CDATA[<p>It has been almost one year since the Kinect was released, and there have been some amazing projects that use it. Microsoft appears to be embracing the hackers and highlights some of the non-video-game related uses in a new video:</p>
<p><iframe src="http://www.youtube.com/embed/T_QLguHvACs" frameborder="0" width="560" height="315"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://kenmankoff.com/2011/10/31/kinect-video-from-microsoft/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vertical Data in Google Earth</title>
		<link>http://kenmankoff.com/2010/05/14/vertical-data-in-google-earth</link>
		<comments>http://kenmankoff.com/2010/05/14/vertical-data-in-google-earth#comments</comments>
		<pubDate>Sat, 15 May 2010 03:10:22 +0000</pubDate>
		<dc:creator>Ken Mankoff</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[IDL]]></category>
		<category><![CDATA[KML]]></category>
		<category><![CDATA[Visualization]]></category>

		<guid isPermaLink="false">http://kenmankoff.com/?p=3919</guid>
		<description><![CDATA[Google Earth does not officially support vertical curtains of data. However, it does support buildings with images on the side. If you are willing to stretch the definition of a building, you can put any vertical data you like into KML. This implementation was inspired by the Goddard Earth Science (GES) Data and Information Service [...]]]></description>
			<content:encoded><![CDATA[<p>Google Earth does not officially support vertical curtains of data. However, it does support buildings with images on the side. If you are willing to stretch the definition of a building, you can put any vertical data you like into KML. This implementation was inspired by the<a href="http://disc.sci.gsfc.nasa.gov/googleearth"> Goddard Earth Science (GES) Data and Information Service Center (DISC)</a> sample files for CloudSat, CALIPSO, and Aqua.</p>
<p>If you use IDL and would like to image your data in Google Earth, be it points, lines, regions, surface images, or vertical data, you should be using my IDL interface to the <a href="http://code.google.com/p/kdm-idl/">KML API</a>.<br />
<center><br />
<div id="attachment_3920" class="wp-caption aligncenter" style="width: 519px"><img src="http://kenmankoff.com/wordpress/wp-content/uploads/2010/05/vertical.png" alt="Vertical Data in Google Earth" title="Vertical Data in Google Earth" width="509" height="556" class="size-full wp-image-3920" /><p class="wp-caption-text">Vertical Data in Google Earth</p></div></center></p>
]]></content:encoded>
			<wfw:commentRss>http://kenmankoff.com/2010/05/14/vertical-data-in-google-earth/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>GLIMMER Ice Shelf Modeling (OS X HowTo)</title>
		<link>http://kenmankoff.com/2010/05/14/glimmer-ice-shelf-modeling-os-x-howto</link>
		<comments>http://kenmankoff.com/2010/05/14/glimmer-ice-shelf-modeling-os-x-howto#comments</comments>
		<pubDate>Sat, 15 May 2010 01:17:15 +0000</pubDate>
		<dc:creator>Ken Mankoff</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Antarctica]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[Greenland]]></category>
		<category><![CDATA[HowTo]]></category>
		<category><![CDATA[ice]]></category>
		<category><![CDATA[Research]]></category>

		<guid isPermaLink="false">http://kenmankoff.com/?p=3898</guid>
		<description><![CDATA[A new beta version of the Community Ice Sheet Model, Glimmer-CISM, has been released. Below are instructions to compile and run it on OS X. # build NetCDF export CFLAGS=-m32 export FFLAGS=-m32 ./configure --prefix=/Users/mankoff/local/netcdf-4.1.1 \ --disable-cxx --disable-curl --disable-dap make &#038;&#038; make install say netCDF done # build GLIMMER cd ~/local/src/ wget http://download.berlios.de/glimmer-cism/glimmer-1.7.0.tar.gz tar zxvf glimmer-1.7.0.tar.gz [...]]]></description>
			<content:encoded><![CDATA[<p>A new beta version of <a href="http://lists.cryolist.org/pipermail/cryolist-cryolist.org/2010-April/000056.html">the Community Ice Sheet Model, Glimmer-CISM, has been released</a>. Below are instructions to compile and run it on OS X.</p>
<pre>
# build NetCDF
export CFLAGS=-m32
export FFLAGS=-m32
./configure --prefix=/Users/mankoff/local/netcdf-4.1.1 \
          --disable-cxx --disable-curl  --disable-dap
make &#038;&#038; make install
say netCDF done

# build GLIMMER
cd ~/local/src/
wget http://download.berlios.de/glimmer-cism/glimmer-1.7.0.tar.gz
tar zxvf glimmer-1.7.0.tar.gz
cd glimmer-1.7.0/

# OS X has issues with 32 and 64 bit libraries.
# The -m32 flag forces 32 bit compilation.
# The following should be one long line:
./configure --prefix=/Users/mankoff/local/glimmer-1.7.0 \
     --with-netcdf=/Users/mankoff/local/netcdf-4.0.1 \
     FC=gfortran F77=gfortran CFLAGS=-m32

make
make install
say GLIMMER done
</pre>
<p>There are a few ways to test the installation. The source folder provides a test folder:</p>
<pre>
export PATH=/Users/mankoff/local/glimmer-1.7.0/bin:$PATH
cd ~/local/src/glimmer-1.7.0/tests/shelf
python circular-shelf.py circular-shelf.PP.config
python confined-shelf.py confined-shelf.PP.config
say GLIMMER Test Done # Takes a while. Turn up your volume
</pre>
<p>Running the above command will result in NetCDF files being created in the output/ subdirectory. You can view the contents of example.nc with most any generic NetCDF viewer. While theses tests run over a given period of time, the output only has one time stored. If you want to see an evolution of the ice shelf, older test suites available from the previous code repository site should be used:</p>
<pre>
cd ~/tmp/
wget http://forge.nesc.ac.uk/download.php/200/glimmer-example-0.6.tar.gz
tar zxvf glimmer-example-0.6.tar.gz
cd glimmer-example-0.6/
~/local/glimmer-1.7.0/bin/glide_launch.py ./example.config
say done
</pre>
<p>Examine the output file example.nc to see ice sheet evolution over time. Basal melt is shown below:</p>
<p><center><br />
<img src="http://kenmankoff.com/wordpress/wp-content/plugins/flash-video-player/default_video_player.gif" /></center></p>
<pre>
@article{Rutt:2009,
  Author = {Ian C. Rutt and Nicholas R. J. Hulton and Antony J. Payne},
  Title = {{The Glimmer community ice sheet model}},
  Year = {2009}}
  Journal = {J. Geophys. Res.},
  Volume = {114},
  Number = {F2},
</pre>
]]></content:encoded>
			<wfw:commentRss>http://kenmankoff.com/2010/05/14/glimmer-ice-shelf-modeling-os-x-howto/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Optical Character Recognition HowTo</title>
		<link>http://kenmankoff.com/2010/05/07/optical-character-recognition-howto</link>
		<comments>http://kenmankoff.com/2010/05/07/optical-character-recognition-howto#comments</comments>
		<pubDate>Sat, 08 May 2010 01:34:48 +0000</pubDate>
		<dc:creator>Ken Mankoff</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[HowTo]]></category>

		<guid isPermaLink="false">http://kenmankoff.com/?p=3868</guid>
		<description><![CDATA[Optical character recognition (OCR) is useful for converting images of text into normal computer text that you can edit, copy, paste and search. With OCR software you can convert old image-based PDFs to text. About 95% of words from a cleanly scanned PDF using a modern font are correctly recognized. Of the ~ 1 in [...]]]></description>
			<content:encoded><![CDATA[<p>Optical character recognition (OCR) is useful for converting images of text into normal computer text that you can edit, copy, paste and search. With OCR software you can convert <a href="http://trailblazing.royalsociety.org/">old image-based PDFs</a> to text. About 95% of words from a cleanly scanned PDF using a modern font are correctly recognized. Of the ~ 1 in 20 that confuse the algorithm, about half are easily corrected with a spell checker, and the remaining must be manually adjusted.</p>
<p>Google has made the <a href="http://code.google.com/p/tesseract-ocr/">tesseract OCR code</a> they use for Google Books available. They don&#8217;t officially support OS X. Below are instructions to get <a href="http://code.google.com/p/tesseract-ocr/">tesseract-ocr</a> running on OS X. As usual, Developer Tools (XCode) needs to be installed.</p>
<p>A slightly simpler installation does not use LibTIFF, but in this case you can only convert single page and uncompressed TIFF files. As PDFs are usually multiple pages, it is worth it to install and compile with LibTIFF.</p>
<pre>
# prepare dependencies
fink install libtiff libtiff-shlibs

# fetch
svn checkout http://tesseract-ocr.googlecode.com/svn/trunk/ tesseract-svn
cd tesseract-svn

# compile
./runautoconf
export CXXFLAGS=-m32 # Force 32-bit architecture
./configure --prefix=/Users/mankoff/local/tesseract/ --with-libtiff=/sw/lib
make
make install

# test run
~/local/tesseract/bin/tesseract image.tif out # run it
say Tesseract finished # might take a while. Turn on your speaker.
gn Finished Tesseract # alias gn='growlnotify -s -m'
less out.txt # check
</pre>
<p>Notes:</p>
<ul>
<li> Here is <a href="http://kenmankoff.com/wordpress/wp-content/uploads/2010/05/mars.tif">a sample image</a> for testing</li>
<li> The image must be in TIF format.</li>
<li>The extension must be have one &#8220;f&#8221;: TIF or tif not TIFF.</li>
<li>Images and complex equations are not handled</li>
</ul>
<p>I tried to run tesseract on my handwriting and it could not decode it. I wrote a simple sentence as clearly as possible, took a photo:</p>
<p><center><br />
<div id="attachment_3876" class="wp-caption aligncenter" style="width: 355px"><a href="http://kenmankoff.com/wordpress/wp-content/uploads/2010/05/quick.png"><img class="size-full wp-image-3876" title="The Quick Brown Fox" src="http://kenmankoff.com/wordpress/wp-content/uploads/2010/05/quick.png" alt="The Quick Brown Fox" width="345" height="271" /></a><p class="wp-caption-text">The Quick Brown Fox</p></div><br />
</center></p>
<p>And the result was:</p>
<pre>
THE ®.U\(.K
[awww Fox
TUMPED oval
#IE uxzv ooé
</pre>
<p>It got &#8220;THE&#8221; and &#8220;Fox&#8221; and most of JUMPED. However, tesseract supports full training so if you need to convert your notes <a href="http://code.google.com/p/tesseract-ocr/w/list">read the documentation</a> and post what your learn below.</p>
]]></content:encoded>
			<wfw:commentRss>http://kenmankoff.com/2010/05/07/optical-character-recognition-howto/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Building a Software/Hardware Environment for Research</title>
		<link>http://kenmankoff.com/2010/03/15/building-a-softwarehardware-environment-for-research</link>
		<comments>http://kenmankoff.com/2010/03/15/building-a-softwarehardware-environment-for-research#comments</comments>
		<pubDate>Mon, 15 Mar 2010 08:25:17 +0000</pubDate>
		<dc:creator>Ken Mankoff</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[HowTo]]></category>
		<category><![CDATA[PhD]]></category>
		<category><![CDATA[Research]]></category>

		<guid isPermaLink="false">http://kenmankoff.com/?p=3753</guid>
		<description><![CDATA[Sometimes I get asked what software/hardware systems I recommend for research. Below is my standard advice. I am a scientific programmer and student and my day-to-day tasks involve research, data analysis,  scientific programming, and writing. Data sets might include satellite images, model output, GPS, seismic, and a variety of other data. Data domains are ocean, [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes I get asked what software/hardware systems I recommend for research. Below is my standard advice. I am a scientific programmer and student and my day-to-day tasks involve research, data analysis,  scientific programming, and writing. Data sets might include satellite images, model output, GPS, seismic, and a variety of other data. Data domains are ocean, atmosphere, and/or ice. I travel a lot, either from home to the office or to the field (which might mean months on a boat with no internet connection). Therefore I try to have a setup that supports high performance computing (HPC) on a laptop.</p>
<p><span id="more-3753"></span></p>
<span id="Purchase"><h1>Purchase</h1></span>
<p>Get a MacBook Pro.</p>
<p>If you need the extreme computing power of a quad-core desktop then you might consider the Mac Pro, but ideally you&#8217;d use the MacBook Pro and ssh into your local supercomputer or cluster. If you travel a lot and don&#8217;t need a lot of disk space you might consider a Macbook Air.</p>
<span id="Computer"><h2>Computer</h2></span>
<p>Get the 13 inch model. This makes traveling easier and maximizes battery life. Since you&#8217;ll have an external monitor at your desktop, even the 17 inch laptop will have a small screen in comparison, so you might as well go for portability.</p>
<p>Other specifications:</p>
<ul>
<li>Minimum CPU.</li>
<li>Maximum hard drive space.</li>
<li>Minimum RAM from Apple.</li>
<li>Go get the maximum possible RAM from <a href="http://crucial.com">http://crucial.com</a> 8GB is nice.</li>
</ul>
<span id="Peripherals"><h2>Peripherals</h2></span>
<ul>
<li>One External monitor.</li>
<li>Two backup disks, equal in size to your internal disk. Ideally one would be the Apple TimeCapsule, but this is quite expensive, so USB or FireWire disks will suffice. Keep one at home and one at the office. Set a calendar reminder to plug into each one at least once a week if you don&#8217;t do it every night by habit.</li>
<li>Two adapter cables (one for VGA one for DVI) so you can connect to external monitors and/or projectors.</li>
<li>A USB key to quickly transfer files</li>
</ul>
<span id="Optional_Peripherals"><h3>Optional Peripherals</h3></span>
<ul>
<li>External mouse</li>
<li>External keyboard</li>
<li>Wacom tablet (to help with RSI and/or artwork)</li>
<li>Headphones to tune out office mates</li>
<li>A USB hub so you can plug in more than 2 peripherals</li>
<li>A Firewire 400 to 800 adapter if you have old firewire drives not supported by the new laptop interface</li>
</ul>
<span id="Software"><h1>Software</h1></span>
<p>The following software list should allow you to write code in almost any language you choose, and to access, display, and analyze almost any data set. The following software will also help you manage your PDF library and write papers.</p>
<span id="Official_Apple_Software"><h2>Official Apple Software</h2></span>
<p>You <strong>must</strong> install the Apple &#8220;Developer Tools&#8221; package that is an optional install on the OS X disk provided with your computer. You know you have installed it if you have a &#8220;/Developer&#8221; folder at the root of your disk.</p>
<p>The Apple iWork suite is nice. It is nicer than MS Office for OS X and provides Pages, Keynote, and Numbers as equivalents to Word, PowerPoint, and Excel. Free alternatives to iWork and Office are Google Docs and Open Office. Or LaTeX for documents, CSV for spreadsheets, and Beamer for presentations.</p>
<span id="rd_Party_OS_X_Software"><h2>3rd Party OS X Software</h2></span>
<p>A partial list of useful 3rd party OS X software follows. Drop any of these words into your favorite search engine to get a download link. Software that cost money is starred*.</p>
<ul>
<li>Adium (For IM, Google Talk, etc.)</li>
<li>AntiRSI (Reminds you to take a break from typing)</li>
<li>Aquamacs (A good code editor)</li>
<li><a href="http://bibdesk.sf.net">BibDesk</a> or <a href="http://mendeley.com">Mendeley</a> (Manage your PDF library and references)</li>
<li>Celestia (Fly through the universe)</li>
<li>Cyberduck (FTP/SFTP)</li>
<li>DoubleTake* (or Hugin) (Stitch together panoramic photos)</li>
<li>Enthought Python Distribution (EPD) (One-stop shopping for all your Python needs)</li>
<li>Firefox (Browse the web)</li>
<li>Fluid (Make Gmail (or any other site) a stand-alone desktop application)</li>
<li>GeoMapApp (Geospatial data browser)</li>
<li>Gimp (Edit images)</li>
<li>GoogleEarth</li>
<li>GrandPerspective (Find out where disk space is getting used)</li>
<li>Graphviz (Flowcharts)</li>
<li>Growl (sleek uniform system notices)</li>
<li>IDL*</li>
<li>Jumpcut (Global clipboard buffer)</li>
<li>LaTeXiT</li>
<li>MATLAB*</li>
<li>MacFUSE (make any computer appear like a local folder via ssh)</li>
<li>MenuMeters (monitor your system status in the menubar)</li>
<li>Mouse Locator (never lose your pointer even on a big screen)</li>
<li>ODV (Ocean Data Viewer)</li>
<li>OmniGraphSketcher* (Make pretty charts)</li>
<li>PDF to Keynote (Convert PDFs to Keynote slides)</li>
<li>Qgis (A free GIS application)</li>
<li>Quicksilver (Use your keyboard for everything. Be efficient)</li>
<li>Sim Daltonism (Simulate color-blind and color-deficiencies so you know your graphs will be readable by everyone, and even print to grayscale well)</li>
<li>Skim (An enhanced PDF reader if you find Preview.app lacking)</li>
<li>Stellarium (See the stars)</li>
<li>SuperDuper!* (Clone a disk for backup, although Time Machine is probably good enough)</li>
<li>Sysquake (For control or robotics applications)</li>
<li>Vapor (or Visit) (Advanced visualization software)</li>
</ul>
<p>From the above list, I want to stress the following:</p>
<ul>
<li>A good PDF manager is essential for research and writing. Use <a href="http://bibdesk.sf.net/">BibDesk</a>, <a href="http://mendeley.com">Mendeley</a>, or Zotero or CiteULike.</li>
<li>Firefox is a decent web browser, but what makes it very useful are the extensions and customization it allows:
<ul>
<li><a href="http://support.mozilla.com/en-US/kb/Smart+keywords?PHPSESSID=017c9edcdbf0d17810884058fda2a602">Smart bookmarks</a> can make searching any website a breeze. For example you could just type &#8220;gsch keywords&#8221; as a shortcut for Google Scholar.</li>
<li>Useful extensions are: DownloadHelper, DownThemAll!, Firefox PDF Plugin for Mac OS X, Flashblock, Permit Cookies, Tab Mix Plus, TabSwitcher, Tree Style Tab, Zotero.</li>
</ul>
</li>
<li><a href="http://jumpcut.sourceforge.net/">Jumpcut</a> is amazing.</li>
<li><a href="http://fluidapp.com/">Fluid</a> will change the way you use your web browser. If you use FaceBook or Gmail or have some other website that is persistently open in your browser, make it a stand-alone application with its own icon, and free your browser for browsing.</li>
<li>You might notice no mention of Adobe.
<ul>
<li>For basic image work, I use Gimp or GraphicsMagick instead of PhotoShop.</li>
<li>For posters I use Pages, Keynote, Beamer, or Powerpoint rather than Illustrator.</li>
<li>For PDFs I use Preview or Skim rather than Acrobat.</li>
</ul>
</li>
</ul>
<span id="Unix_Software"><h2>Unix Software</h2></span>
<p>Much of the following unix-based software will only work if the Apple Developer tools is installed as suggested above.</p>
<p>The main system that provides access to a variety of unix tools is <a href="http://www.finkproject.org/">fink</a>. (OS X is code-named Darwin, and Darwin is linked to Galapagos finches, and fink is the German word for finch, and the main developer of fink is German).</p>
<p>If you prefer not to use fink, you can probably get many of your HPC tools installed via double-clicking. This might be easier, but your choices will be limited compared to fink, and you won&#8217;t have one environment that lets you manage all of the software. However, if all you need is one FORTRAN compiler, or one LaTeX installation, then you might want to search through the pages listed in the Other Resources section below.</p>
<span id="Fink"><h3>Fink</h3></span>
<p>Download and install fink. Follow the default options, but then <a href="http://www.finkproject.org/faq/usage-fink.php?phpLang=en#unstable">enable the &#8220;unstable&#8221; tree</a> to get access to a whole lot of additional (perfectly stable) software.</p>
<p>Once fink is installed and set up, you want to use it to install your favorite unix tools. You can find things to install with the &#8220;list&#8221; command, like this: &#8220;fink list fortran&#8221;. I find the following tools quite useful, but I like to geo-tag images and write presentations in LaTeX&#8230;</p>
<p>fink install base-files bash bash-completion contacts coreutils daemonic ddclient detex exiftags exiv2 fuse g77 gcc44 ghostscript gmt gpsbabel graphicsmagick ispell latex-beamer launch lynx minicom mpack ncarg ncftp ncview proj pstree psutils r-base smartmontools tesseract texlive-base texlive-texmf tree unzip watch wget xtermcontrol</p>
<p>Due to dependency bloat, I prefer graphicsmagick to imagemagick, and avoid using &#8220;gv&#8221; altogether. Instead of gv I use the less user-friendly &#8220;gs&#8221; from ghostview, let  Preview.app convert it to PDF, or manually convert it to pdf with  &#8220;ps2pdf&#8221;. Again due to dependency bloat, Octave and gnuplot are two of the few &#8220;unix&#8221; tools that I install without fink, instead using the OS X HPC page listed at the bottom.</p>
<span id="Not_Fink"><h3>Not Fink</h3></span>
<p>Not everything is available in Fink. I have found the following non-fink-packaged software useful:</p>
<ul>
<li>csv2latex (convert CSV files to LaTeX tables)</li>
<li>gpicsync (geotag and produce KML files of photos)</li>
<li><a href="http://astrophysics.arc.nasa.gov/~pgazis/viewpoints.htm">ViewPoints</a> (multivariate data exploration tool)</li>
</ul>
<span id="Customizing"><h3>Customizing</h3></span>
<p>Now that the software is installed, you&#8217;ll need to spend some time customizing it. The following key areas should be customized for efficiency:</p>
<ul>
<li>Your <a href="http://www.google.com/search?hl=en&amp;site=seach&amp;q=bash%20prompt%20examples&amp;aq=f&amp;oq=&amp;aqi=&amp;tbo=1">bash prompt</a> (.bash_profile)</li>
<li>Bash aliases (.bash_profile)</li>
<li><a href="http://www.emacswiki.org/">Emacs</a>/Aquamacs (.emacs)</li>
<li>SSH (.ssh/config) and <a href="http://oreilly.com/pub/h/66">ssh keys</a></li>
</ul>
<p>With a bit of effort adjusting the above files you can, for example, log into your remote machines with just two keystrokes, one of them being the return key.</p>
<span id="Windows_and_Other_Operating_Systems"><h2>Windows and Other Operating Systems</h2></span>
<p>If you want to run Windows and/or other flavors of Linux (OS X being based on BSD), you can easily do so. You have four main choices: BootCamp, VMWare, Parallels, or VirtualBox, and some minor choices: Crossover, Wine, etc.</p>
<p>Use VirtualBox to host your Windows installation as a local disk image. Do not use the Apple BootCamp.</p>
<p>If you need to run Windows by itself, and want to use some of the tools mentioned in this page in Linux in Windows, you have a few options. The most popular is a Linux Live CD (try Ubuntu). Less popular but easier (no CD required) is <a href="http://www.andlinux.org/">andLinux</a>. Download, double-click, install like regular Windows software, reboot, and you&#8217;ll have a bash shell icon on your desktop.</p>
<span id="Extra_Hardware"><h1>Extra Hardware</h1></span>
<ul>
<li>If you program hardware via serial ports you&#8217;ll need a USB to  Serial adapter. Keyspan makes the best ones. You&#8217;ll also want to make  sure minicom is installed (fink install minicom).</li>
<li>If you use Google Earth a lot you will be grateful to invest in a <a href="http://www.3dconnexion.com/">3D Connexion</a> 6-DOF mouse.</li>
<li>If you want more than 1 external monitor, the best solution is a new breed of <a href="http://www.displaylink.com/shop/index.php?product=2">USB-based monitors</a>. You can have, I think, as many as you like.</li>
<li>If you read a lot of papers an eBook might be a good investment. The only one big enough at the time of this writing to display PDFs as images is the Kindle DX. If you can wait 6 months to a year there should be some good competition and even laptops that have screens that switch to e-ink mode when dimmed.</li>
</ul>
<span id="UCSC_Specific_Tips"><h1>UCSC Specific Tips</h1></span>
<p>UCSC provides licenses for <a href="https://wikis.pmc.ucsc.edu/pmc/Software">MATLAB</a> and <a href="https://wikis.pmc.ucsc.edu/pmc/Software">ENVI</a> (which includes IDL). You can run these for free when you are on the campus network (although I think you have to be wired, or on the &#8220;cruznet secure&#8221; network, not on the general cruznet network.).</p>
<p>If you want to run the software from home you can set up a <a href="https://vpn.soe.ucsc.edu/">VPN</a>. This makes your computer appear as though it is on the UCSC network, even though you can be anywhere in the world. The VPN is also beneficial as it lets you access libraries and journals as though you are on campus, making it easy to download papers into BibDesk.</p>
<span id="Other_Resources_and_Alternatives"><h1>Other Resources and Alternatives</h1></span>
<ul>
<li><a href="http://hpc.sourceforge.net/">http://hpc.sourceforge.net/</a></li>
<li><a href="http://www.atmos.washington.edu/~salathe/osx_unix/">http://www.atmos.washington.edu/~salathe/osx_unix/</a></li>
<li><a href="http://www.macresearch.org/">http://www.macresearch.org/</a></li>
<li><a href="http://www.osxgnu.org/">http://www.osxgnu.org/</a></li>
<li>You can use Darwin Ports instead of fink: <a href="http://darwinports.com/">http://darwinports.com/</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://kenmankoff.com/2010/03/15/building-a-softwarehardware-environment-for-research/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>GISTEMP.StationData</title>
		<link>http://kenmankoff.com/2010/01/24/gistemp-stationdata</link>
		<comments>http://kenmankoff.com/2010/01/24/gistemp-stationdata#comments</comments>
		<pubDate>Mon, 25 Jan 2010 02:45:59 +0000</pubDate>
		<dc:creator>Ken Mankoff</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Climate]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[IDL]]></category>
		<category><![CDATA[KML]]></category>
		<category><![CDATA[map]]></category>
		<category><![CDATA[Visualization]]></category>
		<category><![CDATA[weather]]></category>

		<guid isPermaLink="false">http://kenmankoff.com/?p=3695</guid>
		<description><![CDATA[NASA GISS has recently announced another year of the surface temperature trends. Last year, 2009, tied for the 2nd warmest year on record, and the past decade (January 2000 to December 2009) was the warmest on record. I took the time this weekend to re-create a Google Earth layer showing these data. This visualization allows [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.giss.nasa.gov">NASA GISS</a> has recently announced another year of the surface temperature trends. Last year, 2009, tied for the 2nd warmest year on record, and the past decade (January 2000 to December 2009) was the warmest on record.</p>
<p>I took the time this weekend to re-create a Google Earth layer showing these data. This visualization allows you to see a broad geospatial overview, and then select any particular location and see both long-term trends and even the data point for each individual month.</p>
<p><a href="http://kenmankoff.com/maps/GISTEMP.StationData/GISTEMP.StationData.kml">Download</a> (330K)</p>
<div id="attachment_3696" class="wp-caption aligncenter" style="width: 509px"><img class="size-medium wp-image-3696" title="GISTEMP.StationData" src="http://kenmankoff.com/wordpress/wp-content/uploads/2010/01/map2-499x358.jpg" alt="GISTEMP.StationData" width="499" height="358" /><p class="wp-caption-text">GISTEMP.StationData</p></div>
<div id="attachment_3706" class="wp-caption aligncenter" style="width: 510px"><a href="http://kenmankoff.com/wordpress/wp-content/uploads/2010/01/map3.png"><img class="size-medium wp-image-3706" title="GISTEMP.StationData" src="http://kenmankoff.com/wordpress/wp-content/uploads/2010/01/map3-500x357.png" alt="GISTEMP.StationData" width="500" height="357" /></a><p class="wp-caption-text">GISTEMP.StationData</p></div>
]]></content:encoded>
			<wfw:commentRss>http://kenmankoff.com/2010/01/24/gistemp-stationdata/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>KDM-IDL Code Library</title>
		<link>http://kenmankoff.com/2009/07/30/kdm-idl-code-library</link>
		<comments>http://kenmankoff.com/2009/07/30/kdm-idl-code-library#comments</comments>
		<pubDate>Fri, 31 Jul 2009 00:01:52 +0000</pubDate>
		<dc:creator>Ken Mankoff</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[IDL]]></category>
		<category><![CDATA[KML]]></category>

		<guid isPermaLink="false">http://kenmankoff.com/?p=3091</guid>
		<description><![CDATA[I have spent quite a bit of time developing IDL code in the past, and it appears I will do some more in the near-term future. I have decided to release my IDL code library to the public so that others can perhaps benefit from my work. This is a work-in-progress and access is via [...]]]></description>
			<content:encoded><![CDATA[<p>I have spent quite a bit of time developing IDL code in the <a href="http://lasp.colorado.edu/snoedata/">past</a>, and it appears I will do some more in the near-term future. I have decided to release <a href="http://code.google.com/p/kdm-idl/">my IDL code library</a> to the public so that others can perhaps benefit from my work. This is a work-in-progress and <a href="http://code.google.com/p/kdm-idl/source/checkout">access</a> is via Subversion.</p>
<p>One subset of the library is the <a href="http://code.google.com/p/kdm-idl/wiki/KML">KDM_KML</a> lib for writing KML files. This code should make it fairly simple to display data sets in Google Earth from IDL.</p>
<p>I have currently implemented about 50% of the <a href="http://code.google.com/apis/kml/documentation/kmlreference.html">KML API</a> and will get the rest implemented as time goes on. Right now layers can have overlays, points (placemarks), or linestrings (paths). Any element (that the API supports) can have a timestamp, and styles are supported too. With knowledge of the KML API you can create artistic balloons with whatever content you like that can even link to each other.</p>
]]></content:encoded>
			<wfw:commentRss>http://kenmankoff.com/2009/07/30/kdm-idl-code-library/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>KML Interactive Sampler</title>
		<link>http://kenmankoff.com/2009/07/16/kml-interactive-sampler</link>
		<comments>http://kenmankoff.com/2009/07/16/kml-interactive-sampler#comments</comments>
		<pubDate>Thu, 16 Jul 2009 23:49:51 +0000</pubDate>
		<dc:creator>Ken Mankoff</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[KML]]></category>
		<category><![CDATA[Research]]></category>

		<guid isPermaLink="false">http://kenmankoff.com/?p=3088</guid>
		<description><![CDATA[If you create Google Earth or KML layers, you&#8217;ll want to find a 2nd monitor and keep the KML Interactive Sampler open full screen. An invaluable resource for hand-building a KML or when writing code.]]></description>
			<content:encoded><![CDATA[<p>If you create Google Earth or KML layers, you&#8217;ll want to find a 2nd monitor and keep the <a href="http://kml-samples.googlecode.com/svn/trunk/interactive/index.html">KML Interactive Sampler</a> open full screen. An invaluable resource for hand-building a KML or when writing code.</p>
<div id="attachment_3089" class="wp-caption aligncenter" style="width: 510px"><a href="http://kml-samples.googlecode.com/svn/trunk/interactive/index.html"><img class="size-medium wp-image-3089" title="KML Interactive Sampler" src="http://kenmankoff.com/wordpress/wp-content/uploads/2009/07/KMLSampler-500x263.png" alt="KML Interactive Sampler" width="500" height="263" /></a><p class="wp-caption-text">KML Interactive Sampler</p></div>
]]></content:encoded>
			<wfw:commentRss>http://kenmankoff.com/2009/07/16/kml-interactive-sampler/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

