Programmer tries to explain binary search to the police

The Picard Maneuver@startrek.website to Programmer Humor@programming.dev – 2513 points –
409

You are viewing a single comment

...well offscreen... wow

If its all offscreen, then WTF are we bothing to talk about?

Is this on purpose?

The shooter is on screen the victim is not.

This is on purpose isn't it. You're fucking with me.

This is on purpose isn’t it. You’re fucking with me.

Sorry, I thought you were saying that the guy walking by was off screen, and the person on screen was shot, since the focus of the conversation was about binary search based on what's on the video.

Guy walks bye and shoots someone well offscreen.

In that case the shooter, walking up and then holding up a gun and pulling the trigger would be the marker, as well as the puff of smoke, for the binary search, which could be done with AI, if not human eyes.

Also they would know the approximate time of death, so they can use that to extrapolate a range on the video that they need to binary search on. I'm pretty sure this is normal police work that I'm describing at this point.

Having said that, that's one hell of a hypothetical you made there. At some point you could definitely come up with an example of when a binary search wouldn't work, but not based on what the OP was discussing, or what others were discussing about two people having a fight on camera.

If you skip to after the smoke has dissipated, you cannot gather enough information to know that you need to rewind. A binary search is useless in this scenario.

Depends on how long the smoke remains in the air.

If it's not "for the duration of the rest of the video," then binary search would be useless

If it’s not “for the duration of the rest of the video,” then binary search would be useless

That's not true. It only has to be long enough to be detectable, by landing on a strip of video that it exists on. It'll be harder, definately, but still doable.

Maybe I have no understanding of what a binary search is. My understanding is that you check halfway through the video, see if the thing has happened yet, then skip halfway to the end if it hasn't. Check again, skip again. When you see the cue that the event has happened, you rewind to halfway between the latest point where the event hadn't happened yet and the earliest point when it has. Keep doing that and you can pinpoint the exact frame where the event happens in a matter of minutes.

Binary search would be largely useless in cases where you have a good chance of skipping right past the event. If the video is an hour long, and the event happens 34 minutes in and leaves a visual cue that lasts less than 11 minutes, then binary search does not find the event. At that point, watching the video fast forwarded would be the way to go, and that's not a binary search, that's just watching the video.

So I should correct myself: the visual cue doesn't have to last the remainder of the video, it just needs to last until one of the points that you check. Which still makes it not useful for things that don't leave visual cues that last more than a few minutes, because it cannot find most of those events if they happen at a random time in an hour+ video.

Maybe I have no understanding of what a binary search is.

No, you're not the one who has no understanding of what binary search is.

When you see the cue that the event has happened, you rewind

The event has happened, or the aftereffects that the event happened. That is my point, the aftereffects matter as much as the event itself. As long as the 'after' looks different than the 'before' for any reason, that is a marker to give you an indication on which way to go, rewind, or advance.

And yes, either the effect or the aftereffects has to last long enough to be noticed by humans, less long by AI (faster to detect changes than humans). But the vast majority of events, when humans are involved, leave long aftereffects usually. Yes, not 100% of the time, but usually.

The event has happened, or the aftereffects that the event happened.

In which case there are visual cues and it's something that the comment you argued with acknowledged would be eligible for binary search

But the vast majority of events, when humans are involved, leave long aftereffects usually. Yes, not 100% of the time, but usually.

Nobody said otherwise, you're arguing with strawmen

But the vast majority of events, when humans are involved, leave long aftereffects usually. Yes, not 100% of the time, but usually.

Nobody said otherwise, you’re arguing with strawmen'

Yes, they have. They've used it as a reason why a binary search would not work, that the event duration would be too short to be detectable.

And that's not a strawman, that's making my point, that its not just the event, but the aftereffects of the event, that makes a binary search possible.

less long by AI (faster to detect changes than humans).

Many things change things. A bit of smoke in the air might have been from a gunshot that happened 10 minutes ago, or it might have been from a cigarette 15 minutes ago. Binary search relies on changes that indicate a specific thing has happened–a broken window, a bike no longer there, blood stains on the street. Anything undetectable by humans would still be useless to AIs. A bit a smoke? Could have been a gunshot 3 minutes ago, could have been a cigarette, could be fog, could be a vape. Even the things that AIs are truly useful for, like interpreting video compression artifacts, wouldn't help, because any number of things can cause compression artifacts. How could it tell what pixels are slightly off color because of a gunshot 3 minutes ago, and what pixels are slightly off color because someone walked past the camera?

At that point, just feed the entire video to the AI and have it tell you when it sees guns or puffs of smoke or hears screams. Binary search is useless when you can just have a machine watch the entire video in one sitting over the course of five seconds and tell you when the interesting thing happens.

Anything undetectable by humans would still be useless to AIs. A bit a smoke? Could have been a gunshot 3 minutes ago, could have been a cigarette, could be fog, could be a vape.

Actually, an AI could determine the difference between those, based on shape, location, and opacity, etc.

At that point, just feed the entire video to the AI and have it tell you when it sees guns or puffs of smoke or hears screams.

Is there a point where one technique works better than another technique? Sure. I'm not arguing that. But if you're dealing with a very long time, you'd still want to do a binary search first.

Binary search is useless when you can just have a machine watch the entire video in one sitting over the course of five seconds and tell you when the interesting thing happens.

Depends on how long that tape is, which is what was being originally discussed by the OP.

A binary search assisted by AI in determining the point in the tape where the effect happened quickly is still a very fast way of doing so (assuming the tape duration is very long), as alluded by others in other topic trees in this topic.

Actually, an AI could determine the difference between those, based on shape, location, and opacity, etc.

Lmao now I know you're fucking with me

Yeah lemme spend three weeks training this AI on the difference between gunsmoke, cigarette smoke, vapes, and fog in this specific alley. Oh, y'all already found the killer because someone just watched the video? Well my point stands, the AI could do it faster

Once it's trained

In another week

Oh shit, it thought that guy's cell phone was a gun. See you in another month!

7 more...
7 more...
7 more...
7 more...
7 more...
7 more...
7 more...
7 more...
7 more...

You are trying really hard for some reason to fit a binary search into a discussion about a situation where it clearly does not belong. Very weird but very passionate I applaud you.

You are trying really hard for some reason to fit a binary search into a discussion about a situation where it clearly does not belong. Very weird but very passionate I applaud you.

The actual/origiinal OP talks about a binary search.

Changing the focal point of discussion to fit your narration is not intellectually honest.

You're trying to change the discussion focus point to kill the messenger.

Seriously, my guy. Are you having a mental breakdown or what? You're accusing rational people trying to correct you of being botnet responses, you're constantly moving your goal posts and accusing everyone else of doing it, you're being intellectually dishonest and accusing everyone else of doing it.

You are being transparently and irrationally defensive all because you can't admit you made a mistake. Surely you can see this is no way to go through life and no way to spend your time, right? I'm worried about you.

Seriously, my guy. Are you having a mental breakdown or what?

Because you can judge that from tax off of an Internet comment, right? Don't be insulted, I've at least treated everyone here with enough respect when I've conversed with them not to accuse them of being mentally ill.

You’re accusing rational people trying to correct you of being botnet responses,

Go find my conversation with others about the Falkland Islands and you'll see the quote that I'm speaking about, that made me make that statement.

you’re constantly moving your goal posts and accusing everyone else of doing it,

No, I haven't, and others have. I stand by what I've said.

you’re being intellectually dishonest and accusing everyone else of doing it.

My own words phrase exactly the same way coming right back at me. Hmm, I wonder where I've seen that before?

You are being transparently and irrationally defensive all because you can’t admit you made a mistake.

What mistake, exactly? That a binary search never works? I've never said that. That a binary search works 100% of the time? I've never said that either. What I've stated is that the majority of the time a binary search would work.

Are you advocating that a binary search never works?

Surely you can see this is no way to go through life and no way to spend your time, right? I’m worried about you.

I'm retired, I have time on my hands, and I'm a computer nerd, so I spend that time on the Internet, like I suspect many other people do as well. And I enjoy arguing a point when I feel I'm right, I enjoy a good discussion, though these days that rarely ever happens on the Internet.

Why are you trying so hard to discredit me, to kill the messenger? I appreciate your concerns, but I'm doing just fine, we're just arguing a point on the Internet.

Ok. I initially responded that I didn't even read your response, because I didn't, and I just asked again if you are OK. And I really meant it.

But that seemed rude, so I deleted it, and I read your comment. I'm going to skip over the earlier parts and move to the end of your comment.

Ok! That makes me feel better. If you're just mixing it up and having fun arguing on the internet, I get it. You've got time and you're having fun. That's cool, man. It just comes off a little weird to people, I feel.

I, while I respect what you're saying, don't want to spend time arguing the point. If I could, I would just like to explain to you what my understanding of the situation is, and then, if you disagree, I'll respect that.

Binary search is effective for many things. However: imagine a camera on a blank white wall that was recorded for 24 hours.

At some point during that 24 hours, two people crossed in front of the wall that was being recorded, and one punched the other and then ran out of frame, and the other person ran after them out of frame. The entire exchange was on screen for only a few seconds. The wall was completely unchanged by the encounter.

In that very particular instance, rare as it might seem, binary search will not be more efficient for locating the footage. Does that make sense?

Ok. I initially responded that I didn’t even read your response, because I didn’t, and I just asked again if you are OK. And I really meant it.

But that seemed rude, so I deleted it, and I read your comment.

I appreciate your politeness, sincerely, and thank you for the removal.

The level of toxicity being thrown at me by people (not you) for just discussing when a binary seach is effective or not, that does harm someone, especially when one is just seeking conversation, but that's the Internet, not much you can do about that, except ask people to stop (which usually gets more toxicity thrown at you).

It just comes off a little weird to people, I feel.

Well, people are not used to someone defending their position well (right or wrong). And talking about being used to train bots tends to make others think of tinfoil hat scenarios, so I get it. But it does really happen in real life (I know).

Binary search is effective for many things. However: imagine a camera on a blank white wall that was recorded for 24 hours. ...

As someone who has written binary searches before, I understand that the duration of the event is important, and that short durations make its search effectiveness less than long durations.

But the point I keep hammering on is that its not just the duration of the event that matters, its also if the environment the event happens in and how it changes at the point of the event, for any reason, matters. All you need is for the static image to change from one thing to another, for ANY reason, at the point of the event. And when it comes to humans, that is the norm (change).

Yes, you can describe a scenario where a binary search would not work, but it most likely wouldn't be a real-world event you are describing (like who would point a camera at a small section of wall and just that small section?).

And a final word for anyone who gets to this point and reads this (this is not directed at you personally). ...

I would ask others to consider if those who are running things would want (or not) the general public to realize binary search's potential effectiveness in crime resolution, and demand it being on video tapes when a crime happens, and how they may react to those who advocate for its use.

Ok, fair enough. So you understand in that unusual circumstance where the static image remains provably unchanged, it would make binary search ineffective, but I take your point: most real-world events will create a change in the static image, even if it seems minor (even in ways a human might not notice), which would then allow the effective use of binary search.

Thanks for taking a second to talk it out with me.

1 more...
1 more...
1 more...
1 more...
8 more...
8 more...
8 more...
8 more...