Ask Slashdot: How To Catch Photoshop Plagiarism?
First time accepted submitter jemenake writes "A friend of mine teaches electronic media (Photoshop, Premiere, etc.) at a local high-school. Right now, they're doing Photoshop, and each chapter in the book starts with an 'end result' file which shows what they're going to construct in that chapter, and then, given the basic graphical assets (background textures, photos, etc.), the students need to duplicate the same look in the final-result file. The problem, of course, is that some students just grab the final-result file and rename it and turn it in. Some are a little less brazen and they rename a few layers, maybe alter the colors on a few images, etc. So, it becomes time-consuming for her to open each file alongside the final-result file to see if it's 'too perfect.'" How to look for images closer than they should be to the original? Read on for more details.
jemenake continues: "When I first discovered that she was doing this, my first reaction was that there's got to be some automated way of catching the cheaters. Of course, my first idea of just doing MD5 hashes of each file won't work, since most kids alter the file a little bit.
A second idea I had was to alter the final-result file in a way that isn't obvious, like removing someone's shoelace, mis-spelling a word in the background, or removing/adding some dust-specks. (I know map publishers and music transcribers use this trick to catch copiers). But this still requires that she look for the alteration in each file. I'd think that Photoshop, after all these years, would have some kind of scripting language which also supports some digital watermarking, but I've just never dabbled in that realm.
And, of course, I guess another solution would be for her to not provide the end-result file in Photoshop format, but to export it as a flat image. But I'm still intrigued by the notion of being able to "fuzzily" compare two photoshop files or images to find the ones which are too similar in certain aspects (color histograms, where the edges are, level of noise, whatever).
Anybody else have any clever ideas for this?"
A second idea I had was to alter the final-result file in a way that isn't obvious, like removing someone's shoelace, mis-spelling a word in the background, or removing/adding some dust-specks. (I know map publishers and music transcribers use this trick to catch copiers). But this still requires that she look for the alteration in each file. I'd think that Photoshop, after all these years, would have some kind of scripting language which also supports some digital watermarking, but I've just never dabbled in that realm.
And, of course, I guess another solution would be for her to not provide the end-result file in Photoshop format, but to export it as a flat image. But I'm still intrigued by the notion of being able to "fuzzily" compare two photoshop files or images to find the ones which are too similar in certain aspects (color histograms, where the edges are, level of noise, whatever).
Anybody else have any clever ideas for this?"
That's what a teacher is supposed to do anyway.
Paste images into the source image as new layers, adjust layer mode to "difference" and look for the similarities. Done.
Why not just flatten the final result into a simple image? The students can still see what the end result is supposed to look like, but they obviously can't just hand in that file.
distribute the final file as a watermarked png only. Require assignments to be turned in a multi layered psd files. Problem solved.
Silence is a state of mime.
From the manpage:
findimagedupes compares a list of files for visual similarity.
To calculate an image fingerprint:
1) Read image.
2) Resample to 160x160 to standardize size.
3) Grayscale by reducing saturation.
4) Blur a lot to get rid of noise.
5) Normalize to spread out intensity as much as possible.
6) Equalize to make image as contrasty as possible.
7) Resample again down to 16x16.
8) Reduce to 1bpp.
9) The fingerprint is this raw image data.
To compare two images for similarity:
1) Take fingerprint pairs and xor them.
2) Compute the percentage of 1 bits in the result.
3) If percentage exceeds threshold, declare files to be similar.
Of course, you shouldn't take its suggestions at face value every time, but it should help narrow your search for cheats.
(T>t && O(n)--) == sqrt(666)
The solution is simple:
Give a token homework grade (like ~ 10%) for participating and make everything in the final grade else be based on original projects and tests. Make the students use given files.
Then, if they cheat, they only cheat themselves.
ComparePSD compares two Adobe Photoshop PSD files for you and highlights the differences. Layer by layer. Effect by effect. Simple. And did we mention that ComparePSD is absolutely free?
sysadmins and parents of newborns get the same amount of sleep.
Why not just flatten the final result into a simple image? The students can still see what the end result is supposed to look like, but they obviously can't just hand in that file.
Offer flat JPG in medium quality as an "end result". Maybe even include a digital metadata watermark?
Require high quality JPEG and PSD for assignment. First check for metadata watermark, then compare quality of JPEG. If it looks too close then open up the PSD and check the layers.
See this is where you went wrong. Ever project should ALWAYS include a portrait of Spock in the background, anything less is just not logical.
There Can Be Only One...
Yep. PS does include a history function that can be written to the metadata. Bonus points for pulling out the metadata stream, running some regex on it and deciding if it was legit.
Extra bonus points for not including the history in the image given to the students. And requiring it for a grade.
Faster! Faster! Faster would be better!
It certainly jazzed up our family reunion photo!
#DeleteChrome
Perceptual Image Diff and Find Image Dupes might be helpful. If she runs finddupes with a threshhold of .99 or so, then it is likely just trigger on nearly exact copies. At least, it should narrow down the ones she has to inspect in more detail. On the other hand, pdiff will detect exact or nearly exact copies by specifying how many pixels are allowed to differ (so it can be fooled by addition of random noise). While pdiff is available for Windows as well as Linux, it seems that finddupes is Linux only.
Those who can make you believe absurdities can make you commit atrocities. - Voltaire
Why does this sound like a stock image supplier trying to find machine-modified infringing images using a web crawler so that they can bludgeon the people publishing the modified images, who have not paid a license fee, with a copyright infringement lawsuit?
I'm just saying, a good answer to the OP's question is going to mean the ability to use the answer in this fashion.
Let them use their own base images! And then let them do something creative with them!
One of the least interesting and least creative classes I took in art school was one that was about producing photorealistic oil paintings based on photographs. The class was 99% about mechanical technique, and to hell with creativity... which seems to be the theme of the class being taught here. So be it. But at least the instructor let us pick our own photographs to replicate! So we'd have an interest in what we were doing. And even if he had never checked on our progress along he way (like would happen in any worthwhile "learn how to ____" class), he would know whether we had done the work, because each of our paintings was a) unique, and b) matched the photograph we'd had approved at the start of the assignment. Plagiarism wasn't even a question, and not just because we were working in traditional physical media.
All of these suggestions for how to identify plagiarism through technological measures are missing the point. The problem isn't "how to catch a cheat", but "how to give students an assignment that they will have a reason to bother doing in the first place".
http://alternatives.rzero.com/