Jeff Epler's blog

13 June 2012, 12:49 UTC

StippleGen 2—Stippler, turned friendly

A long time ago I wrote stippler and put the source on my blog. However, it was pretty user-hostile software and doesn't even build with current versions of Linux without modification. That's why I'm gratified to see StippleGen 2, free software (LGPLv2.1+) that performs a similar function but with a nice-looking user interface. I haven't tried it myself, but if you are interested in making this kind of art it surely warrants a look.


24 July 2009, 2:19 UTC

CropGUI 0.1.1: now with gtk

Earlier this year, I released a program for lossless cropping of jpeg images. This week, based on feedback from Ingrid, I ported the program to gtk (it originally used tkinter).

read more…

24 February 2009, 23:09 UTC

cropgui: A Linux GUI for Lossless JPEG Cropping

Update: See the newer version of cropgui

Of the pictures from my recent trip I'd like to put online, I've found that in 75% of the cases where I want to retouch the photo, it's to crop it and nothing else. Since I shoot in jpeg, it's a lossy process to load the jpeg in gimp, crop it, and write the result.

But it turns out that debian's jpegtran has a "-crop" flag which performs lossless cropping of jpeg images as long as the crop is to a multiple of what the manpage calls the "iMCU boundary", a (usually?) 8x8 block of pixels. This feature was pioneered by Guido of some years ago.

There's apparently a nice Windows front-end to this program, but I didn't find a Linux one. So I wrote one! It's pretty basic, but it gets the job done. You can download it below.

read more…

14 February 2009, 16:24 UTC

Canon Digital Rebel XSi (450D) on Linux Ubuntu Hardy 8.04

gimp-ufraw (ubuntu hardy) would open cr2 files from my new camera (Canon Digital Rebel XSi, aka 450D), but until I applied a patch the colors were all wrong. (This is on launchpad but not fixed in an official ubuntu package yet)

Another nice tool with this camera is gphotofs, which allows the camera to be mounted as a filesystem even though it uses PTP rather than mass storage. The one packaged for Ubuntu Hardy works nicely.


17 November 2008, 15:16 UTC

XO-1 screen simulation

I failed to resist the new G1G1 program and ordered myself an XO-1 today. As a lot of geeks are, I'm intrigued by the screen. Updated: sped up the simulation a bit with a pyrex module.

read more…

15 August 2008, 2:59 UTC

Cairo-based waveform demo

It's late, but I just wanted to toss this online. It's a Python / Cairo / Gtk based waveform viewer. Maybe it will become the foundation for a replacement for both emc2's halscope and the logic analyzer GUI, when I find a hundred hours or so to work on it.

The main feature is that when a trace has more than one sample per horizontal pixel it goes into a sort of "envelope" mode, with a fainter trace showing the min and max and the bright trace following the median (not mean) value.

The demo writes out 3 static pngs, then shows a window that you can re-size to get an idea of the responsiveness. I have only run on a very beefy machine so far, which gives the impression that all is well. Resizing is tolerable, and exposing (and, by analogy, scrolling, when I get around to it) is pretty responsive.

Files currently attached to this page:



26 November 2007, 19:29 UTC

Making a YouTube video of X program

Instructions for recording any X program into a video suitable for upload to youtube

read more…

23 October 2006, 18:15 UTC

The Bayer sensor vs the Foveon sensor (part 2 of 2)

In this part of the article, I present the images and compare the results to my predictions.

read more…

29 April 2006, 21:58 UTC

Onscreen Crosshairs in tcl/tk

27 November 2005, 21:38 UTC

Stippler 1.0 source release

21 November 2005, 17:54 UTC

Hershey Vector Fonts

7 November 2005, 19:12 UTC

Two optical illusions

9 October 2005, 18:23 UTC

QOOP -- the final chapter?

All older entries
Website Copyright © 2004-2018 Jeff Epler