Pug’s Place

Never gonna give you up…

Implement a known algorithm. But it better not be a known algorithm!

The latest chapter of the comedy of my life has reached intermission and it will now be related to you:

In Computer Vision we have a term project. This week we were instructed to turn in our chosen project descriptions and abstracts so that our professor could review them and give his approval. I dutifully sent in my chosen project - implementing a mean shift image segmentation algorithm with some fun stuff on the side. My professor wrote me back this morning the following:

ok, sounds good. [...] I also need to know for sure that there is NO software on the web which is an implementation of what you are going to do.

My reply was, in part:

I don’t know how I can or if I can assure you of this, professor. It is after all a known algorithm, published three years ago. I would assume that someone has implemented it before. I’ve dug through what Computer Vision libraries exist for Python, the language I was planning on using, and did not find any pre-implemented segmentation algorithms (though the existing Vision libraries for Python are sparse at best).

I didn’t immediately see anything suspect with a Google search, but would you rather I pick another topic? Since it needs to be unavailable on the Internet, do you suggest that I should restrict my search to very recent publications?

The next sentence I wrote, which I deleted from that email, was: “Perhaps I should instead only seek topics among as-of-yet unpublished papers? I’m sure that if I reached 88 MPH in my DeLorean I could fling myself several months into the future to find published papers which have not yet had implementations released anywhere on the Internet.”

Folks, does anyone else think this professor’s idea is completely mad? The course’s policy is that projects should “consist of implementations of existing algorithms in literature.” If the algorithm exists in literature, wouldn’t you think that someone, somewhere on the Internet would have written the computer code to go along with the algorithm and put it online to download?

Perhaps I’m merely losing more of my mind.

Another interesting fact about me of late: In the last two days I’ve given four interviews to four different reporters. One about Free Culture, two about ICARUS and one about the ACM Programming Team’s results. Three of these were given in the presence of James and E. at CopyNight, so I have witnesses!

Also: On this day 224 years ago, the British General Lord Charles Cornwallis offered his sword in surrender to the French General Rochambeau and General Lafayette, ending the Battle of Yorktown, Virginia. Ah, how times have changed… we used to be France’s “sister republic,” after all.

Update: 7:14 PM ET: My professor wrote me back and approved my selections:

I like the papers you selected. I suggest you go over them and pick the simplest of them all and implement their algorithm. I will trust that you are not going to take any code from the web (if its available) [...]

…Cool!

1 Comment so far

  1. tempest October 26th, 2005 4:16 pm

    There’s only one solution to your problem: you must design the Revelation virus to destroy the Internet. That will unconditionally ensure that when you use a known algorithm, there is no implementation of it anywhere on the Internet. And don’t forget you’ll have to nuke all of ICANN’s root servers as insurance too. *laughs* “Revelation is coming…”

    “Losing more of your mind”? You’re implying you still have some left to lose… :-D
    And hey, I got an interview too! And by a DISCERNING reporter who’s had articles appear in the Community section of the Gainesville Sun. :-P I’m gonna be famous… *preens*

Leave a reply