[HN Gopher] It's easier than ever to de-censor videos
___________________________________________________________________
It's easier than ever to de-censor videos
Author : DamonHD
Score : 310 points
Date : 2025-04-15 17:12 UTC (5 hours ago)
(HTM) web link (www.jeffgeerling.com)
(TXT) w3m dump (www.jeffgeerling.com)
| JKCalhoun wrote:
| Yeah, that is pretty wild.
|
| I recall a co-worker doing something related(?) for a kind of fun
| tech demo some ten years or so ago. If I recall it was shooting
| video while passing a slightly ajar office door. His code
| reconstructed the full image of the office from the "traveling
| slit".
|
| I think about that all the time when I find myself in a public
| bathroom stall.... :-/
| Agree2468 wrote:
| Line scan cameras operate on this principle, and are still used
| in various ways to this days. I'm especially partial to the
| surreal photos generated by them at the end of cycling races
|
| https://finishlynx.com/photo-finish-trentin-sagan-tour-de-fr...
| JKCalhoun wrote:
| I was not aware of those.
|
| Reminds me of slit-scan as well. And of course rolling
| shutters.
| whycome wrote:
| Similar to
|
| https://hackaday.com/2024/08/17/olympic-sprint-decided-
| by-40...
| hifikuno wrote:
| I love line scan cameras. Wikipedia has an awesome photo of a
| tram taken with a line scan camera on the relevant wiki
| page[1].
|
| I've just moved to a house with a train line track out front.
| I want to see if I can use a normal camera to emulate a line
| scan camera. I have tried with a few random YouTube videos I
| found [2].
|
| I think the biggest issue I face is that there simply isn't
| the frame rate in most camera's to get a nicely detailed line
| scan effect.
|
| ---
|
| [1]: https://en.wikipedia.org/wiki/Line-scan_camera
|
| [2]: https://writing.leafs.quest/programming-fun/line-scanner
| nkrisc wrote:
| > I think about that all the time when I find myself in a
| public bathroom stall.... :-/
|
| Walk past a closed bathroom stall fast enough and you can
| essentially do that with your own eyes. Or stand there and
| quickly shift your head side to side. Just don't do it on one
| that's occupied, that's not cool.
| donatj wrote:
| "Sir, why do you keep running back and forth in the
| bathroom?"
| altruios wrote:
| The dither effect. Same as seeing through splayed fingers on
| a franticly oscillating hand.
| Benjammer wrote:
| This is the nerdiest way I've ever seen someone talk about
| John Cena
| whycome wrote:
| What's funny is that the described action didn't click
| until your comment.
| messe wrote:
| > Walk past a closed bathroom stall fast enough and you can
| essentially do that with your own eyes
|
| Only in the US. The rest of the world has doors without a gap
| at the sides.
| freddie_mercury wrote:
| Doors in Vietnam are exactly the same as in the US.
|
| You clearly haven't traveled much so you should refrain
| from sweeping generalisations.
| MisterTea wrote:
| > His code reconstructed the full image of the office from the
| "traveling slit".
|
| This method is commonly used in vision systems employing line
| scan cameras. They are useful in situations where the objects
| are moving, e.g. along conveyors.
| geerlingguy wrote:
| Even today most cameras have some amount of rolling shutter--
| the readout on a high-megapixel sensor is too slow/can't hold
| the entire sensor in memory instantaneously, so you get a
| vertical shift to the lines as they're read from top to
| bottom.
|
| Global shutter sensors of similar resolution are usually a
| bit more expensive.
|
| With my old film cameras, at higher shutter speeds, instead
| of opening the entire frame, it would pass a slit of the
| front/rear shutter curtain over the film to just expose in a
| thousandth of a second or less time.
| rosswilson wrote:
| This reminds me of https://github.com/jo-m/trainbot, a neat
| example of stitching together frames of passing trains to form
| a panorama.
|
| This frontend presents them nicely: https://trains.jo-m.ch
| stevage wrote:
| Surprised I've never come across this idea before
| all2 wrote:
| For a long time I've wanted to install one of these to pull
| graffiti off of trains. As art goes, graffiti is one of the
| last 'free' expressions where it is essentially truly
| anonymous and definitely not for money. Being free of those
| constraints, I think, frees the mind to truly create.
|
| And I'd love an archive somewhere of some of the truly
| awesome train art I've seen.
| quietbritishjim wrote:
| Sorry if you're already aware, but in case not: The weird huge
| gap around the edge of cubical doors in pubic toilets is
| specific to the US. (For those that don't know, it's literally
| 1 or 2 cm.) In Europe you just get a toilet door that shuts
| properly and there's no slit to reconstruct.
|
| I remember my first visit to a toilet in the plush US office of
| a finance company and thinking WTF are they doing with their
| toilet cubicle? I only found out later that it's common there.
| stevage wrote:
| It can be much more than 2cm. The US really hates people for
| some reason.
| brunosutic wrote:
| I like this Jeff Geerling guy.
| ge96 wrote:
| he's like THE or was THE raspberry pi guy
| its-summertime wrote:
| Speaking of, the Lockpicking Lawyer's "Thank you" video
| https://www.youtube.com/watch?v=CwuEPREECXI always irked me a
| bit, yeah its blurred, but as can be seen, (and as was possible
| back then, and way before then too, recovering poor data from
| windowed input has been a thing for 50+ years (e.g. radio
| signals, scanning tools, etc), if you think about it, its a cheap
| way to shift costs from physical improvement to computational
| improvement, just have a shutter), and yet he didn't block the
| information out, only blurred it
| IshKebab wrote:
| That's a totally different scenario. You can't unblur that
| video.
| its-summertime wrote:
| Why not? Would you be willing to stake hypothetical customer
| data on your assumptions?
| formerly_proven wrote:
| > Intuitively, blur might do better than pixelation... but that
| might just be my own monkey brain talking. I'd love to hear more
| in the comments if you've dealt with that kind of image
| processing in the past.
|
| A pixelization filter at least actively removes information from
| an image, a Gaussian blur or box blurs are straight up invertible
| by deconvolution and the only reason that doesn't work out of the
| box is because the blurring is done with low precision (e.g.
| directly on 8-bit sRGB) or quantized to a low precision format
| afterwards.
| danjl wrote:
| Exactly. Do not use blur to hide information. Blurring simply
| "spreads out" the data, rather than removing it. Just search
| (you know, on Google, without an LLM) for "image unblur".
| kccqzy wrote:
| Even if the precision is low, the deconvolution process you
| described is still good enough to reconstruct the original text
| in the majority of cases.
| AdmiralAsshat wrote:
| My Windows-98 approved method for redacting a screenshot:
|
| 1) Open screenshot in MS-Paint (can you even install MS-Paint
| anymore? Or is it Paint3D now?)
|
| 2) Select Color 1: Black
|
| 3) Select Color 2: Black
|
| 4) Use rectangular selection tool to select piece of text I want
| to censor.
|
| 5) Click the DEL key. The rectangle should now be solid black.
|
| 6) Save the screenshot.
|
| As far as I know, AI hasn't figured out a way to de-censor solid
| black yet.
| remram wrote:
| https://jspaint.app/ (https://github.com/1j01/jspaint)
| murdockq wrote:
| Wow glad to see there were other fans of MSPaint, can't
| believe I built my open source version with wxWidgets 16
| years ago https://github.com/murdockq/OpenPaint
| jebarker wrote:
| That's going to be a lot of work for a YouTube video though
| JimDabell wrote:
| It's possible, depending upon the circumstances. If you are
| censoring a particular extract of text and it uses a
| proportional font, then only certain combinations of characters
| will fit in a given space. Most of those combinations will be
| gibberish, leaving few combinations - perhaps only one - that
| has both matching metrics and meaning.
| HPsquared wrote:
| Not forgetting subpixel rendering.
| its-summertime wrote:
| There was a programming competition, can't remember which,
| similar to IOCCC but more about problematic software? where the
| redaction was reversible despite being pure black, due to the
| format chosen allowing for left over information in the image
| (vastly reduced quality but it was enough to allow text to be
| recovered!) [edit: see replies!]
|
| There was also the Android (and iOS?) truncation issue where
| parts of the original image were preserved if the edited image
| took up less space. [edit: also see replies!]
|
| Knowing some formats have such flaws (and I'm too lazy to learn
| which), I think the best option I think is to replace step 6
| with "screenshot the redacted image", so in effect its a
| completely new image based on what the redacted image looks
| like, not on any potential intricacies of the format et al.
| evertedsphere wrote:
| https://www.underhanded-c.org/_page_id_17.html
| ZeWaka wrote:
| There's tricks like this with embedded thumbnails.
| fanf2 wrote:
| You are thinking of John Meacham's winning entry in the 2008
| underhanded C contest
| https://www.underhanded-c.org/_page_id_17.html
| turnsout wrote:
| Wow, it took me a minute to figure out how his entry works.
| You really could read that code and assume it was correct.
| The resulting image is perfectly redacted visually, and the
| missing data is not appended or hidden elsewhere in the
| file. You would only discover it by inspecting the PPM
| image in a text editor. Very sneaky!
| qwertox wrote:
| Maybe you're referring to "aCropalypse". Also there was an
| issue once where sections with overpainted solid black color
| still retained the information in the alpha channel.
|
| https://www.wired.com/story/acropalyse-google-markup-
| windows...
|
| https://www.lifewire.com/acropalypse-vulnerability-shows-
| why...
| Modified3019 wrote:
| I also recall at one point some image file format that
| ended up leaking sensitive info, because it had a embedded
| preview or compressed image, and the editing program failed
| to regenerate the preview after a censor attempt.
|
| Was a loooong time ago, so I don't remember the details.
| fullstop wrote:
| AT&T leaked information, as did the US Attorney's Office,
| when they released PDFs with redacted information. To
| redact, they changed the background of the text to match
| the color of the text. You could still copy and paste the
| text block to reveal the original contents.
|
| https://www.cnet.com/tech/tech-industry/at-38t-leaks-
| sensiti...
| googlryas wrote:
| The underhanded C contest: https://www.underhanded-c.org/
| teddyh wrote:
| Too bad that they only show the winners up to 2015. All the
| later ones are on github.com, but are harder to find.
| youainti wrote:
| I would guess that would be due to compression algorithms.
| rkagerer wrote:
| Step 5.5) Take a new screenshot of the image.
| Calwestjobs wrote:
| step 5.5.5 - tell chatgpt what is on image to regenerate it
| for you XD
| Calwestjobs wrote:
| what about intentional adding data into image?
|
| screenshot - im not convinced apple does not use invisible
| watermark to add info into image data. but for fact every
| photo you take with iphone, contains invisible watermark with
| your "phone serial number". to remove such watermarks,
| facebook is converting every picture you post for last 10
| years... just weird extra con to using modern technology.
|
| try to copy banknote on your printer, it will not print
| anything, just says error. + every page of text printed
| contains barely visible yellow marks containing again serial
| number of printer.
|
| ....
| eviks wrote:
| this method looks worse than pixelation/blurry style, those
| "just" need to be updated to destroy info first instead of
| faithfully using the original text
| MBCook wrote:
| If you REALLY care then replace the real information with
| fake information and pixelate that.
|
| But most people don't care enough.
|
| Or I guess you could make a little video of pixelation that
| you just paste on top so it looks like you pixelated the
| thing but in reality there's no correspondence between the
| original image and what's on screen.
| Arubis wrote:
| What I love about this method is that it so closely matches
| what actual US govt censors do with documents pending release:
| take a copy, black it out with solid black ink, then _take a
| photocopy of that_ and use the photocopy for distribution.
| devmor wrote:
| This is similar to how I censor images on a cellphone. I use
| an editor to cover what I want to censor with a black spot,
| then take a screenshot of that edited image and delete the
| original.
| kccqzy wrote:
| Make sure your editor uses real pure black to cover the
| region. Chances are, if you use a general image editing app
| and if you deal with concepts like "brushes" you are not
| using pure black; it's mostly likely black with varying
| alpha channel.
| 0cf8612b2e1e wrote:
| News publications are also encouraged to do the same or even
| re-type the raw document. There was a story about how they
| shared raw scans of the leaked documents such that the yellow
| printer id dots were visible. That might have been for C.
| Manning?
| layman51 wrote:
| This is odd because when I follow your steps up to Step 5, the
| rectangle that gets cut out from the screenshot is white. I did
| remember to follow steps 2 and 3.
| AdmiralAsshat wrote:
| Might've changed in recent versions of Paint if you're on Win
| 11. It definitely _used_ to take whatever you had as Color 2
| as your background.
| ZeWaka wrote:
| Still does.
| layman51 wrote:
| I think it depends on the new layers feature that's on my
| version of Paint. If I make the base layer be
| transparent, then the cutout is transparent.
| layer8 wrote:
| If you want the blurred/pixelated look, blur/pixelate something
| else (like a lorem ipsum) and copy it over to the actual
| screenshot.
| SoftTalker wrote:
| 7) Print the screenshot
|
| 8) Scan the printed screenshot
| HPsquared wrote:
| Or take a blurry misaligned photo of the screen.
| eastbound wrote:
| This. Never give the original file, always take a screenshot
| of it. If it's text being blacked out, it can be guessed from
| the length of words.
| genewitch wrote:
| Forgot the wooden table step...
| a2128 wrote:
| > can you even install MS-Paint anymore? Or is it Paint3D now?
|
| Paint3D, the successor to MSPaint, is now discontinued in favor
| of MSPaint, which doesn't support 3d but it now has Microsoft
| account sign-in and AI image generation that runs locally on
| your Snapdragon laptop's NPU but still requires you to be
| signed in and connected to the internet to generate images.
| Hope that clears things up
| orthoxerox wrote:
| Maxis was simply ahead of its time.
| layer8 wrote:
| Don't do this on a PDF document though. ;)
| jcul wrote:
| Should be ok if you rasterize the PDF. Run something like
| pdftotext after to be sure it doesn't have any text.
|
| Or to be safe, print it and scan it, or just take a
| screenshot.
| layer8 wrote:
| Testing that it doesn't have text doesn't help if the text
| was a bitmap in the first place.
|
| Normally the use case is that you still want to distribute
| it as a PDF, usually consisting of many pages, and without
| loss of quality, so the printing/scanning/screenshotting
| option may not be very practical.
|
| No, the real solution is to use an editor that allows you
| to remove text (and/or cut out bitmaps), before you add
| black rectangles for clarity.
| gruez wrote:
| >2) Select Color 1: Black
|
| You don't need this step. It already defaults to black, and
| besides when you do "delete" it doesn't use color 1 at all,
| only color 2.
| lynndotpy wrote:
| Solid color would convey far less information, but it would
| still convey a minimum length of the secret text. If you can
| assume the font rendering parameters, this helps a ton.
|
| As a simple scenario with monospace font rendering, say you
| know someone is censoring a Windows password that is (at most)
| 16 characters long. This significantly narrows the search
| space!
| graypegg wrote:
| That sort of makes me wonder if the best form of censoring
| would be solid black shape, THEN passing it through some
| diffusion image generation step to infill the black square.
| It will be obvious that it's fake, but it'll make determining
| the "edges" of the censored area a lot harder. (Might also be
| a bit less distracting than a big black shape, for your
| actual non-advisarial viewers!)
| Retr0id wrote:
| > AI hasn't figured out a way to de-censor solid black yet.
|
| I did though, under certain circumstances. Microsoft's Snipping
| Tool was vulnerable to the "acropalypse" vulnerability - which
| mostly affected the cropping functionality, but could plausibly
| affect images with blacked-out regions too, if the redacted
| region was a large enough fraction of the overall image.
|
| The issue was that if your edited image had a smaller file size
| than the original, only the first portion of the file was
| overwritten, leaving "stale" data in the remainder, which could
| be used to reconstruct a portion of the unedited image.
|
| To mitigate this in a more paranoid way (aside from just using
| software that isn't broken) you could re-screenshot your edited
| version.
| navane wrote:
| Luckily the current Microsoft screen snip utility is so buggy
| I often have to screen shot my edited screen shots anyway to
| get it to my clipboard.
| sva_ wrote:
| Maybe silly, but I'd always take a screenshot of the final
| thing and then paste that to a new file... just to be sure.
| al_borland wrote:
| Back in the TechTV days one of the hosts used Photoshop to crop
| a photo of herself before posting it online. One would think a
| crop, completely removing the part of the image would be even
| better than solid black. However, with the way Photoshop worked
| in 2003, it didn't crop the embedded Exif thumbnail, which
| people were able to use to get the uncropped image.
| Funes- wrote:
| Japanese porn is being "decensored" with AI as we speak, in fact.
| It looks a tad uncanny, still, but finding a "decensored" clip in
| the wild was quite the thing for me a couple of weeks ago.
| internetter wrote:
| This is a completely different process -- the AI is inferencing
| what goes there, it isn't actually using any information from
| the pixels so it wouldn't work in this case.
|
| Not to mention deeply and disturbingly unethical
| gjsman-1000 wrote:
| So let me get this straight: Porn can be ethical - selling
| your nude features online can be ethical - doing the
| activities in porn consensually can be ethical - pleasuring
| yourself on other people doing so can be ethical - but using
| AI to infer nude features is "disturbingly unethical"?
| ziddoap wrote:
| > _but using AI to infer nude features is "disturbingly
| unethical"?_
|
| If it is against the wishes of the people in the video,
| yes, yes it is.
|
| E: Never thought I'd see the day I'm downvoted for saying
| un-blurring porn of people who made porn under the
| assumption that it would be blurred (and may not have made
| that same decision without that context) is unethical, on
| HN of all places, but times are strange I guess.
| anigbrowl wrote:
| In this case it's a legal requirement imposed by the
| government.
| googlryas wrote:
| Yes, but their decisions to be porn stars were made
| within the context of that law. Maybe they wouldn't care
| about the uncensored version of their video getting out.
| Maybe they would?
| Der_Einzige wrote:
| Piracy is the opposite of unethical, because information
| wants to be free. IP rights holders had their NAP
| violated - and society is better off for it.
|
| The reason it's "against the wishes" of folks in a JAV
| video is because of the legal risk it opens them up to
| from the Japanese government - not because the
| actors/actresses "don't consent to viewers seeing their
| uncensored body".
|
| Note that I am NOT talking about distribution of non
| consensual deepfakes. Obviously that's abhorrent.
| GuinansEyebrows wrote:
| only one of these things has an intrinsic environmental tax
| exponentially higher than the rest.
| kbelder wrote:
| You think using AI on the video has a higher
| environmental impact than actually filming the video in
| the first place?
| sva_ wrote:
| It would use information from the pixels around it though.
|
| > Not to mention deeply and disturbingly unethical
|
| Is it really deeply disturbingly unethical? Just FYI, it
| isn't their identities that are censored, but their genitals
| are pixelated due to Japanese laws.
| Funes- wrote:
| >It would use information from the pixels around it though.
|
| I'd bet it could use information from the pixels around it
| _and_ the blurred out ones as well. It 's not hard to
| imagine such an approach.
| zoky wrote:
| I also have a network share named "mercury" connected to my Mac,
| and that last example nearly made me shit myself.
| geerlingguy wrote:
| Ha! I name most of my shares after celestial bodies... Jupiter
| is the big 100 TB volume for all my archives. Mercury is an
| all-NVMe volume for speed, for my video editing mostly.
| HPsquared wrote:
| I wonder how much random noise (or other randomness) would have
| to be added to the pixelated version to make this method
| unusable.
| miki123211 wrote:
| If you really want that blur effect so badly, you can just
| replace your content with something innocuous, _and then blur
| that innocuous content_.
|
| This is what you actually have to do with websites, e.g. when
| you want some content blurred when it's behind a paywall. If
| you leave the original text intact, people can just remove the
| CSS blur in dev tools.
|
| Some implementations get this slightly wrong, and leave the
| placeholder content visible to accessibility tools, which
| sometimes produces hilarious and confusing results if you rely
| on those.
| wlesieutre wrote:
| _> If I hadn 't moved around my Finder window in the video, I
| don't think it would've worked. You might get a couple letters
| right, but it would be very low confidence._
|
| _> Moving forward, if I do have sensitive data to hide, I 'll
| place a pure-color mask over the area, instead of a blur or
| pixelation effect._
|
| Alternately - don't pixelate on a stationary grid when the window
| moves.
|
| If you want it to look nicer than a color box but without giving
| away all the extra info when data moves between pixels, pixelate
| it once and overlay with a static screenshot of that.
|
| For bonus points, you could automate scrambling the pixelation
| with fake-but-real-looking pixelation. Would be nice if video
| editing tools had that built in for censoring, knowing that
| pixelation doesn't work but people will keep thinking it does.
| geerlingguy wrote:
| That's another good way to do it.
|
| I wonder if it might be good for the blur/censor tools (like on
| YouTube's editor even) to do an average color match and then
| add in some random noise to the area that's selected...
|
| Would definitely save people from some hassle.
| wlesieutre wrote:
| The part that might take some work is matching the motion
| correctly, with a pixelated area or blacked out rectangle it
| doesn't matter if it's exactly sized or moving pixel
| perfectly with the window. I haven't done any video editing
| in 20 years, so maybe that's not very difficult today?
|
| That moving pixelation look is definitely cooler though. If
| you wanted to keep it without leaking data you could do the
| motion tracked screenshot step first (not pixelated, but text
| all replaced by lorem ipsum or similar) and then run the
| pixelation over top of that.
|
| If any of you nerds reading this are into video editing,
| please steal this idea and automate it.
| IshKebab wrote:
| Yeah this scenario is purposefully chosen specifically to make
| this attack possible. It's basically irrelevant in the real
| world.
| geerlingguy wrote:
| Someone's already emailed me the depixelated version of the
| paper I'm holding in the video attached to this blog post.
| mikelitoris wrote:
| Does this guy look like Eminem or what?
| 42lux wrote:
| Bad blackout jobs are in the news since the 50s and every time an
| expert tells the same solution. If you want to censor something
| remove the information.
| nightpool wrote:
| Easier said than done if you're using a proportional font
| though
| Calwestjobs wrote:
| black box is black box, or other more pleasing color.
| lynndotpy wrote:
| > Years ago it would've required a supercomputer and a PhD to do
| this stuff
|
| This isn't actually true. You could do this 20 years ago on a
| consumer laptop, and you don't need the information you get for
| free from text moving under a filter either.
|
| What you need is the ability to reproduce the conditions the
| image was generated and pixelated/blurred under. If the pixel
| radius only encompasses, say, 4 characters, then you only need to
| search for those 4 characters first. And then you can proceed to
| the next few characters represented under the next pixelated
| block.
|
| You can think of pixelation as a bad hash which is very easy to
| find a preimage for.
|
| No motion necessary. No AI necessary. No machine learning
| necessary.
|
| The hard part is recreating the environment though, and AI just
| means you can skip having that effort and know-how.
| cogman10 wrote:
| In fact, there was a famous de-censoring that happened because
| the censoring which happened was a simple "whirlpool" algorithm
| that was very easy to unwind.
|
| If media companies want to actually censor something, nothing
| does better than a simple black box.
| lynndotpy wrote:
| Ah yes, Mr. Swirl Face.
|
| This was pretty different though. The decensoring algorithm
| I'm describing is just a linear search. But pixelation is not
| an invertible transformation.
|
| Mr. Swirl Face just applied a swirl to his face, which _is_
| invertible (-ish, with some data lost), and could naively be
| reversed. (I am pretty sure someone on 4chan did it before
| the authorities did, but this might just be an Internet
| Legend).
| Modified3019 wrote:
| A long while ago, taking an image (typically porn),
| scrambling a portion of it, and having others try to figure
| out how to undo the scrambling was a game played on various
| chans.
| cjbgkagh wrote:
| Christopher Paul Neil is a real person who went to jail.
| Der_Einzige wrote:
| Shhhhh!!!!!
|
| Yeah but if you read about him it serves as a rallying
| cry for right wing types since he's an example of the
| candaian legal systems extreme leniency. This guy should
| be in prison forever and he's been free since 2017. Look
| at his record of sentencing. I love being a bleeding
| heart liberal/progressive and all, but this is too far.
|
| Furthermore, don't look too hard at Isreal and it's
| policy of being very, very open to pedophiles and similar
| types.
| rcfox wrote:
| > nothing does better than a simple black box
|
| You still need to be aware of the context that you're
| censoring in. Just adding black boxes over text in a PDF will
| hide the text on the screen, but might still allow the text
| to be extracted from the file.
| falcor84 wrote:
| Indeed. And famously, using black boxes as a background on
| individual words in a non-monospaced font is also
| susceptible to a dictionary attack on an image of the
| widths of the black boxes.
| lesuorac wrote:
| And even taking sharpie and drawing a black box doesn't
| mean the words can be seen at a certain angle or by
| removing the sharpie ink but not the printed ink.
|
| Really, if you need to censor something create a
| duplicate without the originals. Preferably literally
| without the originals as the size of the black box is
| also an information leak.
| snotrockets wrote:
| No need for the monospaced requirement - it would reduce
| the search space, but it's solvable even before this
| reduction.
| fc417fc802 wrote:
| The additional leakage provided by non-monospace is
| rather large. With monospace all you know is the
| character count.
| thehappypm wrote:
| this gets exponentially harder with a bigger blur radius,
| though.
| nartho wrote:
| Noob here, can you elaborate on this ? if you take for example
| a square of 25px and change the value of each individual pixels
| to the average color of the group, most of the data is lost, no
| ? if the group of pixels are big enough can you still undo it ?
| DougMerritt wrote:
| It's not that you're utterly wrong; some transformations are
| irreversible, or close to. Multiplying each pixel's value by
| 0, assuming the result is exactly 0, is a particularly clear
| example.
|
| But others are reversible because the information is not
| lost.
|
| The details vary per transformation, and sometimes it depends
| on the transformation having been an imperfectly implemented
| one. Other times it's just that data is moved around and
| reduced by some reversible multiplicative factor. And so on.
| its-summertime wrote:
| How many pixels are in `I` vs how many are in `W`? different
| averages as a result. With subpixel rendering, kerning, etc,
| there is minute differences between the averages of `IW` and
| `WI` as well, order can be observed. It is almost completely
| based on having so much extra knowledge: the background of
| the text, the color of the text, the text renderer, the font,
| etc, there are a massive amount of unknowns if it is a random
| picture, but if we have all this extra knowledge, it
| massively cuts down on the amount of things we need to try:
| if its 4 characters, we can make a list of all possibilities,
| do the same mosaic, and find the closest match, in nearly no
| time.
| porphyra wrote:
| Yeah most of the information is lost, but if you know the
| font used for the text (as is the case with a screencast of a
| macOS window), then you can try every possible combination of
| characters, render it, and then apply the averaging, and see
| which ones produce the same averaged color that you see. In
| addition, in practice not every set of characters is equally
| likely --- it's much more likely for a folder to be called
| "documents" than "MljDQRBO4Gg". So that further narrows down
| the amount of trying you have to do. You are right, of
| course, that the bigger the group of pixels, the harder it
| gets: exponentially so.
| lynndotpy wrote:
| Yeah, a screencast of a MacOS window is probably one of the
| best case scenarios for this.
| lynndotpy wrote:
| TLDR: Most of the data is indeed "lost". If the group of
| pixels are big enough, this method alone becomes infeasible.
|
| More details:
|
| The larger the group of pixels, the more characters you'd
| have to guess, and so the longer this would take. Each
| character makes it combinatorially more difficult
|
| To make matters worse, by the pigeonhole principle, you are
| guaranteed to have collisions (i.e. two different sets of
| characters which pixelate to the same value). E.g. A space
| with just 6 possible characters, even if limited to
| a-zA-Z0-9, that's 62*6 = 56800235584, while you can expect at
| most 2048 color values for it to map to.
|
| (Side note: That's 2048 colors, not 256, between #000000 and
| #FFFFFF. This is because your pixelation / mosaic algorithm
| can have eight steps inclusive between, say, #000000 and
| #010101. That's #000000, #000001, #000100, #010000, #010001,
| #010100, #000101, and #010101.
|
| Realistically, in scenarios where you wouldn't have pixel-
| perfect reproduction, you'd need to generate all the combos
| and sort by closest to the target color, possibly also
| weighted by a prior on the content of the text. This is even
| worse, since you might have too many combinations to store.)
|
| So, at 25 pixel blocks, encompassing many characters, you're
| going to have to get more creative with this. (Remember, just
| 6 alphanumeric characters = 56 billion combinations.)
|
| Thinking about this as "finding the preimage of a hash", you
| might take a page from the password cracking toolset and
| assume priors on the data. (I.e. Start with blocks of text
| that are more likely, rather than random strings or starting
| from 'aaaaaa' and counting up.)
| margalabargala wrote:
| Depends how much data you have. If a 25x25 square is blurred
| to a single pixel, that will take more discrete information
| to de-blur than if it were a 2x2 square. So a longer video
| with more going on, but you can still get there.
| BoingBoomTschak wrote:
| Something like https://github.com/Jaded-Encoding-
| Thaumaturgy/vapoursynth-de..., you mean?
| bob1029 wrote:
| It would seem techniques like this have been used in domains like
| astronomy for a while.
|
| > The reconstruction of objects from blurry images has a wide
| range of applications, for instance in astronomy and biomedical
| imaging. Assuming that the blur is spatially invariant, image
| blur can be defined as a two-dimensional convolution between true
| image and a point spread function. Hence, the corresponding
| deblurring operation is formulated as an inverse problem called
| deconvolution. Often, not only the true image is unknown, but
| also the available information about the point spread function is
| insufficient resulting in an extremely underdetermined blind
| deconvolution problem. Considering multiple blurred images of the
| object to be reconstructed, leading to a multiframe blind
| deconvolution problem, reduces underdeterminedness. To further
| decrease the number of unknowns, we transfer the multiframe blind
| deconvolution problem to a compact version based upon [18] where
| only one point spread function has to be identified.
|
| https://www.mic.uni-luebeck.de/fileadmin/mic/publications/St...
|
| https://en.wikipedia.org/wiki/Blind_deconvolution
| dopadelic wrote:
| This makes sense for blurring, but not for pixelation
| mosaicking.
| gliptic wrote:
| For pixelation you can use another technique invented for
| astronomy: drizzling [1].
|
| [1] https://en.wikipedia.org/wiki/Drizzle_(image_processing)
| Havoc wrote:
| That was a cool vid.
|
| I recall interpol doing similar a couple years back to bust a
| dodgy kids image ring. That was a swirl though which I guess is
| mathematically easier
| vault wrote:
| I noticed the link in Jeff's post to RX 10 Elements Noise
| Reduction. The audio in their YouTube presentation was not
| horrible at all though. Has anybody tried it with some real
| horrible recording? Like those from a blink mini camera in a room
| without furniture.
| geerlingguy wrote:
| I have, I was going to go for a more extreme example but
| couldn't find one quickly on their channel.
|
| It's not perfect, by any means, but you can get intelligible
| speech from a pretty terrible recording at least. Adobe has
| their AI assist tool too, it works pretty well though I've
| found it can't isolate a speaker when there are a lot of other
| people talking nearby.
| marcodiego wrote:
| > For the second attempt, GIMP was used to get a better window
| selection algorithm with ffmpeg, and with a slight bit more data
| (more frames extracted), a perfectly legible result
|
| Take that adobe.
| mrlonglong wrote:
| So it's now possible to redub phrases such as melon farmers with
| the real swears?
| taf2 wrote:
| Giving the final image at 13 seconds to ChatGPT and I wonder if
| this is pretty close...
| https://x.com/taf2/status/1912260125278032228
| istjohn wrote:
| It's clearly not. In the original screenshot there are 6 files
| with the prefix "I.2J", but in the GPT version, there are only
| four.
| syntaxing wrote:
| Reminds me of the "swirl face".
|
| [1] https://matzjb.se/2015/07/26/deconstructing-swirl-face/
| feverzsj wrote:
| You should try "AV-8500 Special" from 90s' Japan.
|
| [0]
| https://groups.google.com/g/alt.video.laserdisc/c/Ws6h9uiumF...
|
| [1] https://x.com/nabetora164/status/1660981662006775809
| HocusLocus wrote:
| The Bell Labs A-3 scrambler used real time band inversion and
| transposition and was 'snake oiled' into the commercial market,
| but under the pressure of WWII it fell quickly. It was bad enough
| it was self-clocked and a German engineer had helped design it.
| But even more embarrassing was, without having to reverse
| engineer the circuit, humans could train their ears to recognize
| individual speakers and even words.
|
| Today we take for granted the ability to conjure a complicated
| pseudorandom digital stream for keying, but in those days it was
| just "no can do".
|
| In WWII... SIGSALY was the first system secure by modern
| standards. Pairs of synchronized one-time phonographic records
| containing a sequence of tones seeded from a noise source.
| Calwestjobs wrote:
| superresolution is here for 20+years, even GPUs use that now...
| geerling is clickbait.
|
| maybe this youtube channel will be interesting
| https://www.youtube.com/@mikirubinstein
|
| so if we could do that 12 years ago, debluring/depixelating of
| video should be easy
___________________________________________________________________
(page generated 2025-04-15 23:00 UTC)