π Added
Segment Anything 2 in `workflows` π₯³
We prepared great amount of changes to `workflows`, could not really decide which update to start with, but at the end we found onboarding of [SAM 2 model](https://ai.meta.com/sam2/) as most exciting.
Thanks to hansent effort we have introduced SAM 2 `workflow` block.
![SAM2 workflow](https://github.com/user-attachments/assets/4680ed50-108d-4d2e-ad0e-249edd48eed5)
You can use SAM2 standalone, or you can ground it's predictions with other detection models which is the true power of `workflows`. Thanks to grounding, you can generate instance segmentation masks for each bounding box predicted by your object detection model
<div align="center">
<img src="https://github.com/user-attachments/assets/6cc9d2c7-1fe5-4d7e-b788-b5c89f535afa" width="60%"/>
</div>
β We do not support SAM2 at Roboflow Hosted Platform yet, but it is possible to use `inference server start` command to run local server supporting SAM2 model and connect it to `workflows` UI to run examples.
`workflows` π€ SAHI
We've added set of blocks that let people apply [SAHI technique](https://blog.roboflow.com/how-to-use-sahi-to-detect-small-objects/) based on utilities provided by [`supervision`](https://github.com/roboflow/supervision).
We are going to work to simplify SAHI usage in `workflows` UI, but now you need to use three blocks to effectively apply technique:
![image](https://github.com/user-attachments/assets/3555f8d1-b847-4c94-9af0-d4c36f3e78fd)
<div align="center">
<img src="https://github.com/user-attachments/assets/5d0849be-717e-4256-8a31-c55d848081a9" width="60%"/>
</div>
Classical Computer Vision methods in `workflows` π₯
We do not forget about old good friends - that's why we also added bunch of blocks with classical Computer Vision algorithms:
* Dominant Color block by NickHerrig in https://github.com/roboflow/inference/pull/578
* SIFT, SIFT matching, classical pattern matching and others by ryanjball in https://github.com/roboflow/inference/pull/581
π± Changed
* Added encoding='utf-8' to setup.py by Bhavay-2001 in https://github.com/roboflow/inference/pull/556
* Move landing static assets to `/static/` namespace by iurisilvio in https://github.com/roboflow/inference/pull/577
* add exclusion rules for dedicated deployment authorizer by PacificDou in https://github.com/roboflow/inference/pull/576
* Workflow private block properties by EmilyGavrilenko in https://github.com/roboflow/inference/pull/579
π¨ Fixed
* Fix security issues with landing page by PawelPeczek-Roboflow in https://github.com/roboflow/inference/pull/584
* Fixed a Regression in the Custom Metadata Block that was introduced in `v0.16.0` - PR with fix by chandlersupple (https://github.com/roboflow/inference/pull/573) - we kindly ask clients relying on the Custom Metadata Block, running their workflows on-prem to update `inference` or `inference` server
* Bug in `workflows` Execution Engine that was making it impossible to feed the same block with two identical selectors (fixed in https://github.com/roboflow/inference/pull/581)
β In release `0.16.0` we introduced bug impacting `workflows` and `inference_sdk`
The mistake was introduced in https://github.com/roboflow/inference/pull/565 and fixed in https://github.com/roboflow/inference/pull/585 (both by PawelPeczek-Roboflow π’ ) and was causing issues with order of results - regarding specific `workflows` blocks:
* blocks with Roboflow models, whenever used with batch input (for instance when workflow was run against multiple images, or Dynamic Crop was used) were mismatching order of predictions with respect to order of images
* the same was true for OpenAI block and GPT-4V block
* the problem was also introduced into `inference_sdk`, so whenever client was called with multiple images - results may have been missmatched
**We advice all our clients to upgrade to new release and abandon usage `inference=0.16.0`**
π
New Contributors
* Bhavay-2001 made their first contribution in https://github.com/roboflow/inference/pull/556
**Full Changelog**: https://github.com/roboflow/inference/compare/v0.16.0...v0.16.1