Now that we've seen the use of drones in the Ukraine war, 10k+ drone light shows, Waymo's autonomous cars, and tons of AI advancements in signals processing and planning, this seems obvious.
> potentially better for us civilians if drones get used to attack a lot more targeted (think Putin
Putin is well protected, way better than US presidents and candidates. With lower prices and barriers it can actually be you, or any low profile target. Luckily real terrorist are mostly uneducated.
Then it should be possible to use them to counter and defend. Think of AI powered interceptor drones patrolling the area, anti-drone light machine guns.
Unclear exactly what you're asking. The linked paper describes an algorithm (patent status unclear). That paper happens to link to a GPL licensed implementation whose authors explicitly solicit business licensing inquiries. The related model weights are available on Hugging Face (license unclear). Notably the HF readme file contains conflicting claims. The metadata block specifies apache while the body specifies GPL.
The paper says it is based on YOLOv8, which uses the even stricter AGPL-3.0. That means you can use it commercially, but all derived code (even in a cloud service) must be made open source as well.
They probably mean the algorithm, but nevertheless the YOLO models are relatively simple so if you know what you're doing it's pretty easy to reimplement them from scratch and avoid the AGPL license for code. I did so once for the YOLOv11 model myself, so I assume any researcher worth their salt would also be able to do so too if they wanted to commercialize a similar architecture.
You don't just need to reimplement the architecture (which is trivial even for non-researcher level devs), you need to re-train the weights from scratch. According to the legal team behind Yolo, weights (including modifications via fine tuning) fall under the AGPL as well and you need to contact their sales team for a custom license if you want to deviate from AGPL.
I assume they refer to the academic basis for the algorithm rather than the implementation itself.
Slightly unrelated, how does AGPL work when applied to model weights? It seems plausible that a service could be structured to have pluggable models on the backend. Would that be sufficient to avoid triggering it?
The standard for humans is a clean room reimplementation so I guess you'd need 2 AIs, one to translate A into a list of requirements and one to translate that list back into code.
But honestly by the time AI is proficiently writing large quantities of code reliably and without human intervention it's unclear how much significance human labor in general will have. Software licensing is the least of our concerns.
Presumably depends on the impacts. It's an ideology that seeks user freedom. If you need access to the source code to use as a template that clearly favors proprietary offerings. But if you can easily clone proprietary programs that would favor the end user.
YOLO is way faster. We used to run both, with YOLO finding candidate bounding boxes and SAM segmenting just those.
For what it's worth, YOLO has been a standard in image processing for ages at this point, with dozens of variations on the algorithm (yolov3, yolov5, yolov6, etc) and this is yet another new one. Looks great tho
SAM wouldn't run under 1000ms per frame for most reasonable image sizes
SAM doesn't do open vocabulary i.e. it segments things without knowing the name of the object, so you can't ask it to do "highlight the grapes", you have to give it an example of a grape first.
Q. Any of you know models that do well at deleting objects from an image i.e. inpainting with mask with intention to replace mask with background? Whatever I've tried so far leaves a smudge (eg. LaMa)
You can build a pipeline where you use:
GroundingDino (description to object detection) -> SAM (segmenting) -> Stable Diffusion model (inpainting, I do mainly real photo so I like to start with realisticVisionV60B1_v51HyperVAE-inpainting and then swap if I have some special use case)
For higher quality at a higher cost of VRAM, you can also use Flux.1 Fill to do inpainting.
Lastly, Flux.1 Kontext [dev] is going to be released soon and it promises to replace the entire flow (and with better prompt understanding). HN thread here: https://news.ycombinator.com/item?id=44128322
My question wasn't about inpainting but eraser inpainting models. Most inpainting models replace objects instead of erasing them even though the prompt shares an intent to delete
We had motion triggered sprinklers that worked great, but they did not differentiate between foxes and 4 year old children if I forgot to turn them off haha.
We have more or less 360 degrees CCTV coverage of the garden via 7 or 8 CCTV cameras so rough plan is to have basic motion pixel detection to detect frames with something happening then fire those frames off for inference (rather than trying to stream all video feeds through the algorithm 24/7) and turn the sprinklers on. Hope to get to about 500ms end-to-end latency from detection to sprinklers/tap activated to cement the "causality" of stepping into the garden and then ~immediately getting soaked and scared in the foxes brains. Most latency will be for the water to physically move and make the sprinklers start, but that is another issue really.
Probably will use a RPi 5 + AI Hat as the main local inference provider, and ZigBee controlled valve solenoid on the hose tap.
Likewise but for raccoons. Are you precision targeting or just broad sprinkler coverage? I need to make sure my cat doesn’t get hosed :-/
I got a cheap MLX90640 off aliexpress for target detection and a grove vision AI V2 module to use with IR cam for classification/object tracking. Esp32 for fusion and servo/solenoid actuation.
Funnily enough, that was my computer science capstone project back in 2010!
I don’t know if our project sponsor ever got the company off the ground, but the basic idea was an automated system to scare geese off of golf courses without also activating in the middle of someone’s backswing.
If someone can sell it for $100 they'd make some serious money. The birds are fouling my pool, and the plastic owl does nothing. Right now I'm thinking it should make a loud noise, or launch a tennis ball randomly. The best part is I can have it disarm if it sees a person.
My thought is just to rent it out for to rich folks with lawns for a few hundred bucks a week. My contraption will have thermal detection, AI target discrimination, and precision targeting with a laminar flow water stream. That’s the plan, anyways.
The setback of YOLO architectures is that they use predefined object categories that are a part of the training process. If you want to adapt YOLO to a new domain you need to retrain it with your new category label.
This work presents a version of YOLO that can work on new categories without needing to retrain the algorithm, but instead having a real-time "dictionary" of examples that you can seemlessly update. Seems like a very useful algorithm to me.
Edit: apologies i misread your comment I thought it was asking why this is different that regular YOLO
We’ve tested this in our production environment on mobile robots (think quadcopter and ground UGV) and it works really nicely
If this is military related, im terrified of the future. Sci-fi movies with crazy drones from back when are no longer that cute.
7 years ago, this felt like science fiction:
https://www.youtube.com/watch?v=HipTO_7mUOw
Now that we've seen the use of drones in the Ukraine war, 10k+ drone light shows, Waymo's autonomous cars, and tons of AI advancements in signals processing and planning, this seems obvious.
This is important.
I don't want to live on this planet anymore.
We have nuclear weapons.
We already achieved complete destruction potential.
Drones don't change much. It's potentially better for us civilians if drones get used to attack a lot more targeted (think Putin).
This should lead to narrow policies which might be less aggressive
> potentially better for us civilians if drones get used to attack a lot more targeted (think Putin
Putin is well protected, way better than US presidents and candidates. With lower prices and barriers it can actually be you, or any low profile target. Luckily real terrorist are mostly uneducated.
You’re right to be terrified
The truly scary part is that it’s a straightforward evolution from this to 1000 fps hyperspectral sensors.
There will be no hiding from these things and no possibility of evasion.
They’ll have agility exceeding champion drone pilots and be too small to even see or hear until it’s far too late.
Life in the Donbass trenches is already hell. We’ll find a way to make it worse.
Then it should be possible to use them to counter and defend. Think of AI powered interceptor drones patrolling the area, anti-drone light machine guns.
Is this OSS?
Unclear exactly what you're asking. The linked paper describes an algorithm (patent status unclear). That paper happens to link to a GPL licensed implementation whose authors explicitly solicit business licensing inquiries. The related model weights are available on Hugging Face (license unclear). Notably the HF readme file contains conflicting claims. The metadata block specifies apache while the body specifies GPL.
https://github.com/AILab-CVC/YOLO-World
https://huggingface.co/spaces/stevengrove/YOLO-World/tree/ma...
The paper says it is based on YOLOv8, which uses the even stricter AGPL-3.0. That means you can use it commercially, but all derived code (even in a cloud service) must be made open source as well.
They probably mean the algorithm, but nevertheless the YOLO models are relatively simple so if you know what you're doing it's pretty easy to reimplement them from scratch and avoid the AGPL license for code. I did so once for the YOLOv11 model myself, so I assume any researcher worth their salt would also be able to do so too if they wanted to commercialize a similar architecture.
You don't just need to reimplement the architecture (which is trivial even for non-researcher level devs), you need to re-train the weights from scratch. According to the legal team behind Yolo, weights (including modifications via fine tuning) fall under the AGPL as well and you need to contact their sales team for a custom license if you want to deviate from AGPL.
I assume they refer to the academic basis for the algorithm rather than the implementation itself.
Slightly unrelated, how does AGPL work when applied to model weights? It seems plausible that a service could be structured to have pluggable models on the backend. Would that be sufficient to avoid triggering it?
Does GPL still mean anything if you can ask AI to read from code A and reimplement into code B?
The standard for humans is a clean room reimplementation so I guess you'd need 2 AIs, one to translate A into a list of requirements and one to translate that list back into code.
But honestly by the time AI is proficiently writing large quantities of code reliably and without human intervention it's unclear how much significance human labor in general will have. Software licensing is the least of our concerns.
If that's legal then copyright is meaningless which was the original intention of the GPL.
So, uncopyrightable AI generated code is actually a good thing from open source community standpoint?
Presumably depends on the impacts. It's an ideology that seeks user freedom. If you need access to the source code to use as a template that clearly favors proprietary offerings. But if you can easily clone proprietary programs that would favor the end user.
How would this kind of mechanical translation fail to be a violation of copyright?
https://github.com/AILab-CVC/YOLO-World
Neat. Wonder how this compares to Segment Anything (SAM), which also does zero-shot segmentation and performs pretty well in my experience.
YOLO is way faster. We used to run both, with YOLO finding candidate bounding boxes and SAM segmenting just those.
For what it's worth, YOLO has been a standard in image processing for ages at this point, with dozens of variations on the algorithm (yolov3, yolov5, yolov6, etc) and this is yet another new one. Looks great tho
SAM wouldn't run under 1000ms per frame for most reasonable image sizes
Just as a quick demo, here is an example of YOLO-World combined with EfficientSAM: https://youtu.be/X7gKBGVz4vs?t=980
We used mobile Sam because of this, was about 250ms on cpu. Useful for our use case
SAM doesn't do open vocabulary i.e. it segments things without knowing the name of the object, so you can't ask it to do "highlight the grapes", you have to give it an example of a grape first.
Try this: https://github.com/luca-medeiros/lang-segment-anything
This uses GroundingDINO for open vocabulary, separate model. Useful nonetheless, but means you're running a lot of model inference for a single image.
Q. Any of you know models that do well at deleting objects from an image i.e. inpainting with mask with intention to replace mask with background? Whatever I've tried so far leaves a smudge (eg. LaMa)
You can build a pipeline where you use: GroundingDino (description to object detection) -> SAM (segmenting) -> Stable Diffusion model (inpainting, I do mainly real photo so I like to start with realisticVisionV60B1_v51HyperVAE-inpainting and then swap if I have some special use case)
For higher quality at a higher cost of VRAM, you can also use Flux.1 Fill to do inpainting.
Lastly, Flux.1 Kontext [dev] is going to be released soon and it promises to replace the entire flow (and with better prompt understanding). HN thread here: https://news.ycombinator.com/item?id=44128322
There are plenty of Stable Diffusion based models that are capable of inpainting, of course they are heavier to run than LaMa.
My question wasn't about inpainting but eraser inpainting models. Most inpainting models replace objects instead of erasing them even though the prompt shares an intent to delete
I've got big plans for this for an automated geese scaring system
Same here but for urban foxes.
We had motion triggered sprinklers that worked great, but they did not differentiate between foxes and 4 year old children if I forgot to turn them off haha.
We have more or less 360 degrees CCTV coverage of the garden via 7 or 8 CCTV cameras so rough plan is to have basic motion pixel detection to detect frames with something happening then fire those frames off for inference (rather than trying to stream all video feeds through the algorithm 24/7) and turn the sprinklers on. Hope to get to about 500ms end-to-end latency from detection to sprinklers/tap activated to cement the "causality" of stepping into the garden and then ~immediately getting soaked and scared in the foxes brains. Most latency will be for the water to physically move and make the sprinklers start, but that is another issue really.
Probably will use a RPi 5 + AI Hat as the main local inference provider, and ZigBee controlled valve solenoid on the hose tap.
Likewise but for raccoons. Are you precision targeting or just broad sprinkler coverage? I need to make sure my cat doesn’t get hosed :-/
I got a cheap MLX90640 off aliexpress for target detection and a grove vision AI V2 module to use with IR cam for classification/object tracking. Esp32 for fusion and servo/solenoid actuation.
Collab?
Brb, using this for the local tigers
Funnily enough, that was my computer science capstone project back in 2010!
I don’t know if our project sponsor ever got the company off the ground, but the basic idea was an automated system to scare geese off of golf courses without also activating in the middle of someone’s backswing.
If someone can sell it for $100 they'd make some serious money. The birds are fouling my pool, and the plastic owl does nothing. Right now I'm thinking it should make a loud noise, or launch a tennis ball randomly. The best part is I can have it disarm if it sees a person.
My thought is just to rent it out for to rich folks with lawns for a few hundred bucks a week. My contraption will have thermal detection, AI target discrimination, and precision targeting with a laminar flow water stream. That’s the plan, anyways.
Needs (2024) in the title.
This looks so good! Will it be available on replicate?
this is one year old. wonder why post now.
Old stuff is often reposted here to attract attention. It mostly goes unnoticed.
not to be a grump, but why was this posted recently? Has something changed? Yolo-world has been around for a bit now.
The setback of YOLO architectures is that they use predefined object categories that are a part of the training process. If you want to adapt YOLO to a new domain you need to retrain it with your new category label.
This work presents a version of YOLO that can work on new categories without needing to retrain the algorithm, but instead having a real-time "dictionary" of examples that you can seemlessly update. Seems like a very useful algorithm to me.
Edit: apologies i misread your comment I thought it was asking why this is different that regular YOLO
It was new to me, serf. And judging by the number of upvotes, it was new to a few other people too.