At Ikomia, we deeply believe that sharing scientific knowledge is the key to success. This belief drives us to make research-based algorithms ready-to-use for developers through our Python library (Ikomia API) and desktop software (Ikomia STUDIO).
Our main goal is to convert existing Python code into easily accessible and deployable algorithms. This approach enables us to integrate repositories from researchers, labs, and renowned frameworks like OpenCV, Detectron2, OpenMMLab and Hugging Face. Within a unified framework, developers can craft workflows and seamlessly blend these cutting-edge algorithms, streamlining the integration process by eliminating its complexities.
By democratizing advanced technologies, we strive to accelerate innovation in AI, computer vision, and machine learning. Our platform empowers developers to leverage cutting-edge algorithms effortlessly, thereby fostering collaboration and transformative applications.
Stay tuned for our forthcoming SaaS platform, designed to simplify workflow publication and deployment on dedicated CPU or GPU endpoints. Contact us at [email protected] for more information.
pip install ikomia
With Ikomia, when you want to use an algorithm, it's always the same code pattern which is useful when you want to test multiple algorithms effortlessly.
from ikomia.dataprocess.workflow import Workflow
from ikomia.utils.displayIO import display
# Init your workflow
wf = Workflow()
# Add YOLO and connect it to your input data
yolov7 = wf.add_task(name="infer_yolo_v7", auto_connect=True)
# Run directly on your image
wf.run_on(url="https://raw.githubusercontent.com/Ikomia-dev/notebooks/main/examples/img/img_fireman.jpg")
# YOLO output image with bounding boxes
display(yolov7.get_image_with_graphics())
And finally, you can also export your results as JSON files.
# Get all object detection
json_results = yolov7.get_results().to_json()
print(json_results)
from ikomia.dataprocess.workflow import Workflow
from ikomia.utils.displayIO import display
# Init your workflow
wf = Workflow()
# Add YOLO and connect it to your input data
yolov7 = wf.add_task(name="infer_mmlab_pose_estimation", auto_connect=True)
# Run directly on your image
wf.run_on(url="https://raw.githubusercontent.com/Ikomia-dev/notebooks/main/examples/img/img_fireman.jpg")
# YOLO output image with bounding boxes
display(yolov7.get_image_with_graphics())
ik
is an auto-completion system designed to help developers to find available algorithms in Ikomia HUB. See the documentation for more explanations here.
from ikomia.dataprocess.workflow import Workflow
from ikomia.utils import ik
from ikomia.utils.displayIO import display
wf = Workflow()
yolov7 = wf.add_task(ik.infer_yolo_v7_instance_segmentation(), auto_connect=True)
# wf.run_on(path="path/to/your/image.png")
wf.run_on(url="https://raw.githubusercontent.com/Ikomia-dev/notebooks/main/examples/img/img_dog.png")
display(yolov7.get_image_with_graphics())
display(yolov7.get_image_with_mask())
display(yolov7.get_image_with_mask_and_graphics())
from ikomia.dataprocess.workflow import Workflow
from ikomia.utils import ik
wf = Workflow("Dog instance segmentation with YOLOv7")
yolov7 = wf.add_task(ik.infer_yolo_v7_instance_segmentation(), auto_connect=True)
filter = wf.add_task(ik.ik_instance_segmentation_filter(categories="dog", confidence="0.90"), auto_connect=True)
wf.save("path/to/your_workflow.json")
Once you export your workflow, you can share it with others, use it with Ikomia STUDIO or push it on our SaaS platform for deployment (contact us at [email protected] for more information).
You can find some notebooks here.
We provide some Google Colab tutorials:
Notebooks | Google Colab |
---|---|
How to make a simple workflow | |
How to run Neural Style Transfer | |
How to train and run YOLO v7 on your datasets | |
How to use Detectron2 Object Detection |
Python API documentation can be found here.
You will find Ikomia HUB algorithms code source in our Ikomia HUB GitHub and all algorithms on our website.
This part is coming soon...:)
Distributed under the Apache-2.0 License. See LICENSE.md
for more information.
If you use Ikomia in your research, please use the following BibTeX entry.
@misc{DeBa2019Ikomia,
author = {Guillaume Demarcq and Ludovic Barusseau},
title = {Ikomia},
howpublished = {\url{https://github.com/Ikomia-dev/IkomiaAPI}},
year = {2019}
}
Contributions, issues, and feature requests are welcome! Give a ⭐ if you like this project!
Ikomia - @IkomiaOfficial - [email protected]
Project Link: https://github.com/Ikomia-dev/IkomiaAPI