Ponente Acquired by Block Museum

The Mary and Leigh Block Museum, home to a notable collection of digital prints, has acquired a print of Ponente, a recent algorithmic work by Paul Hertz. Ponente is one of the Sampling Patterns series of works exploring blue noise. Ponente is constructed from multiple layers of blue noise in varying scales and densities, altered by low frequency waves and coloring rules.

Algorithmically-generated image, Ponente

Ponente, 2011, archival inkjet print, 18 x 29 in.

Deadpan Acquired by Addison Gallery

In January 2013 the Addison Gallery of American Art acquired the first suite in the new edition of Paul Hertz’s suite of digital prints Deadpan, or, the Holy Toast. Printed at 16.2 x 14 inches on 22 x 17 inch Hahnemühle Photo Rag Paper in a limited edition of five portfolios plus two artist’s proof portfolios, this new edition reveals the full detail and complexity of the images. Prints are available individually or as a full portfolio. Please use our contact form for inquiries.

The master printer and Galapagos print

The master printer and Galapagos print

Work Journal | Feb 17 – Mar 24

Feb 17th, 7hrs | Programming: mysql, php.

Started the website.

-Prepare mysql database to interact with the website.

-Made basic queries to database to display a profile page from information pulled from a mysql database.

-Practiced echoing database  data to create html/css/javascript etc. Figured out that echos don’t work like println(java)/cout<<cplusplus  in that echo actually get incorporated into the code of your program so that you can subsequently echo chunks to write html.


echo “<img src='”;
echo $filename;
echo “‘/>”;
echo “<br><br>”;


Feb 21st 7hrs | Programming: domain setup, mysql, php.

-Bought a personal domain to temporary host the pyramid website.

-Set up website to use mysql database on the website. Had to actually give it instructions to connect and find it now. Also gave it a location to store sessions

This specific code was required for

mysql_connect(“jackkoocom.fatcowmysql.com”, “jack”, “password”);

-Set up ftp with filezilla and fatcow server

-Began working on features such as login, and upload.


Feb 24th 8hrs | Programming: domain setup, mysql, php.

-Lesson on advance sql queries, php troubleshooting, and some extra work afterwards.

-Fixed 90% of upload errors on filesize by editing the php settings on the server. Still sometime output errors on extra large files.

changed these values @ http://www.fatcow.com/member/cgiManagement/PHPplus.bml
php_value upload_max_filesize 10M
php_value post_max_size 10M
php_value max_input_time 300
php_value max_execution_time 300

-Finishing up features (login, upload)

-Added registration to input new users into database upon giving invitation codes matching the invitationCodes table in the database.


Feb 26th, 2hrs  | Programming: Java 

Lesson on java double buffering.

-Learned about double buffering to prepare for java application (the collage application).

Double buffering is basically to prevent seeing black flashes appear when the image has not finished being redrawn during. So you draw the image onto a “buffer” and switch it to the current displaylist when its done drawing. So the drawing process is behind the scene and the change of tearing is significantly reduced.

Jon Heard my tutor also showed me a useful java function to clip images to specific shapes.

Now I should have everything i need for the collage software (although the shape clipping don’t have any anti-alias, i might want to look into that issue)


Feb 28th,  7hrs | Printing, Programming: php

Paul had several big prints that he wanted printed. Everything he wanted printed was in an adobe bridge group so I could print them on my own. I setup the print and printed the fabulous photographs of Paul. The last print had extra space so Paul let me print one of my artworks . The output of my artwork isn’t setup for prints yet but it still came out great.

On the programming side, I was debugging an error that come upon login. Can’t recall the specifics of the error now.


March 2nd,  7hrs |  Programming: php, sql.

-Search feature done!

-Used sql  queries to return all matching searches and sort them into alphabetical order (wasted a lot of time writing a complex php code that did the same thing). I wrapped the echoed results in hrefs and put the matching id in the url. So then the profile page was editted to check for ids in the url first  and generate a page  based on that.

$IDsMatchingSearchText = mysql_query(”
SELECT ID, firstName, lastName FROM users WHERE firstName=’$searchText’ UNION
SELECT ID, firstName, lastName FROM users WHERE lastName=’$searchText’ ORDER BY lastName ASC

-Slight tweaks everywhere. (homepage redirect, added about to registration, tested div capabilities etc)

-Was wondering why saic.edu seems to log me off when i close the tab even though everyone on the forums says that it’s impossible to know that you closed the tab. Actually the saic.edu log off is a illusion. If you copy the url, close the browser and paste it in. the session remains. So what it actually does is log you off when you enter the homepage, and is missing a specific element in the url. Paul wanted this feature for security so i know know how to add it.

Jack Koo

Hi this is Jack. I’m an intern at Ignotus Editions. This blog will help me keep track of what I’ve done!


Jan 27, Friday 10am-4    | Nozzle Check, Color Calibration, Printer Operations.

First day at Ignotus. My first surprise working with Paul Hertz is how much better color looked on print than on the screen. We set up the printer to clean the nozzles since Paul had been in Spain and we don’t want clogged nozzles. Printers need to be constantly in use to prevent the nozzles from being clogged up by dry paint. After the nozzles were cleaned, we went over basic concepts of Color Workflow. We calibrated the the monitor with colormunki to make sure the prints color looked almost identical to the monitor. Then we went over some basic steps to operating the digital printer. Loading/unloading paper, loading unloading inc, printer settings, printing etc.


Jan 31, Tuesday 10am-3    | Packaging Paper, Image Processing.

We were preparing for the opening of QuadCore exhibition. Learnt about packaging paper for transport. As always, Paul is very delicate with the paper. Each print has paper layered between to prevent friction damage. The paper is then put into a plastic bag to prevent rain damage, and then put into a hard cardboard case. Paul got called that he couldn’t install that day, so we went over Image Processing. Raw photo files had a lot of information that we could pull out and show details in monotone sections of the photo that we can pull out. We also sharpened areas for clearer print, and got rid of camera artifacts.


Feb 1, Wednesday 6pm-9    | Java Syntax, Eclipse Functions, Swing Layouts.

Paul wanted me to learn Java for the collage web application that he’s been planning to make. I’m very familiar with C++ and Processing, which made java a breeze to learn. I learnt about basic syntax, eclipse functions, and swing layouts.


Feb 3, Friday 8:30am-4    | Transporting Paper, Installing Prints.

Preparing more prints and transporting it to the QuadCore exhibition for installation. We printed an extra print to take to the exhibition (You should print daily to ensure nozzle hygiene). At the gallery we measured the space we had and calculated how many prints would fit with reasonable margins. The 36 inch print in the middle almost took three people to set up. Two people needed to hold it, and on person had to snap the magnets to the screws that we inserted into the walls.

Computational Aesthetics 2011

Two large format digital prints by Paul Hertz will be shown in the juried art show at the annual Computational Aesthetics conference, held this year in Vancouver, Canada from August 5 through 7. The archival inkjet prints from the artist’s recent “Sampling Patterns” series, Ponente and Shimmer, were printed at Ignotus Editions.

Selections from the Sampling Patterns series can be viewed here, in a Flickr set. The series was developed with the Processing programming language, including Hertz’s Processing Library, IgnoCodeLib.

Artist’s Statement

Ponente and Shimmer are based on regular random distributions known as “blue noise.” Natural phenomena such as identically charged particles jostling for position within a limiting boundary or a flock of birds adjusting their mutual distances have similar distributions. Blue noise dot patterns have interesting visual and cognitive effects: Their regularity seems to imply an order just about to emerge, which their randomness negates. These and other works in my “Sampling Patterns” series are snapshots from interactive real-time animations where the geometric points of the distribution are used to sample functions that control color, scale, shape, and other visual attributes. The snapshots are further edited to produce prints.

In Ponente, blue noise grids determine the locations of distorted circular shapes in different scales and granularities. Low frequency wave functions control variations in scale and simple coloring rules distinguish different layers of shapes or populations within each layer. In Shimmer, a distribution is partitioned into three populations that are distinguished by algorithmically determined colors. Each population has its own shape-generation rule. A global rule for shape orientation (a wave function) creates swirling motions over the visual field.

A Dangerous Size

Printing an 11 x 14 inch sheet on the Epson 9900 involves a ticklish problem: the paper jams against the roll cover. This crumples it top and probably bottom, where the crumpled paper can hit the print head. This could damage the print head. Collisions can happen both when the paper feeds for the first time, when it moves up and down as the sensors on the head measure and position it, or when you start printing, and it again adjusts up and down.

Fortunately, the solution is simple. You can hover over the printer, gently guiding the top edge of the paper with your hands, though that isn’t the best solution. Holding or taping another piece of paper onto the roll cover behind the sheet works better. You could also leave the cover in raised position, but then you wouldn’t have it to guide and support the sheet.

protected printer

Paper taped to roll cover

Bitmap to Surface to Model

Bitmaps can be used as height fields for a 3D terrain. Typically, the brighter the pixel value, the higher the terrain at the location mapped to the pixel. A 3D grid such as a terrain model can be output as cross-sections and created in any convenient material. The Processing app included with this post will do the whole process for you: open a bitmap, display it as a terrain model, and output cross-section profiles to a PDF file. The profiles include slot marks. Once you cut out the profiles and the slots, you can fit everything together into a model. The model can be used to construct a mold for the surface.

Let me explain this with pictures. First, here’s what the assembled model looks like:

The assembled model

The assembled model

Continue reading ‘Bitmap to Surface to Model’

Mushroom Duotones

Posted a few duotone images of mushrooms to Flickr. Didn’t mean to spend this morning making these images, but when you get the right subject matter, there is an eerie presence to toned images: Maybe it’s the intersection of image qualities that recall old photography and emulsions hand-coated onto paper coupled with high tech display and printing—or maybe the mushrooms (just shitakes) have an effect on me.

This tutorial on duotones over at Luminous Landscape was useful.

Duotone Soft Proof

Can’t soft proof a duotone in Photoshop. Have to convert to RGB to soft proof; however, the color changes in subtle ways.

One way to compare the images is by checking their histograms.

The duotone image is just a little darker on average (mean 106.97 compared to mean 112.53), and it clearly has pixels in the darkest bins, including a spike of 0% black over on the left edge of its histogram. The RGB image has no black pixels until you reach level 11, about a 4% gray.

Comparison of two histograms

Comparison of RGB and duotone image histograms

You can use Curves adjustment layers to compare the dynamic ranges of the two versions of the image. Option-drag on the black point or the white point in the Curves dialog to see where in the image the darkest and lightest values are found. The duotone reveals solid black (0%) in a few places. The RGB version has no solid blacks. In the light tones, the two are practically the same.
Continue reading ‘Duotone Soft Proof’