YOLOLogic


NameYOLOLogic JSON
Version 2.1.2 PyPI version JSON
download
home_pagehttps://engineering.purdue.edu/kak/distYOLO/YOLOLogic-2.1.2.html
SummaryAn educational module for experimenting with the YOLO logic for multi-instance object detection and for generating region proposals with graph-based algorithms
upload_time2024-02-21 05:17:09
maintainerAvinash Kak
docs_urlNone
authorAvinash Kak
requires_python
licensePython Software Foundation License
keywords object detection image segmentation computer vision
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            

Consult the module API page at

      https://engineering.purdue.edu/kak/distYOLO/YOLOLogic-2.1.2.html

for all information related to this module, including information related
to the latest changes to the code.  The page at the URL shown above lists
all of the module functionality you can invoke in your own code.

::

        Single-Instance and Multi-Instance Object Detection:
    
            Say you wish to experiment with YOLO-like logic for multi-instance
            object detection, you would need to construct an instance of the
            YOLOLogic class and invoke the methods shown below on
            this instance:
        
            rpg = YOLOLogic(
                              dataroot = "./data/",
                              image_size = [128,128],
                              yolo_interval = 20,
                              path_saved_yolo_model = "./saved_yolo_model",
                              momentum = 0.9,
                              learning_rate = 1e-6,
                              epochs = 40,
                              batch_size = 4,
                              classes = ('Dr_Eval','house','watertower'),
                              use_gpu = True,
                          )
            yolo = YOLOLogic.YoloLikeDetector( rpg = rpg )
            yolo.set_dataloaders(train=True)
            yolo.set_dataloaders(test=True)
            model = yolo.NetForYolo(skip_connections=True, depth=8) 
            model = yolo.run_code_for_training_multi_instance_detection(model, display_images=False)
            yolo.run_code_for_training_multi_instance_detection(model, display_images = True)
            
    
        Graph-Based Algorithms for Region Proposals:
    
            To generate region proposals, you would need to construct an instance
            of the YOLOLogic class and invoke the methods shown below
            on this instance:
        
            rpg = YOLOLogic(
                           ###  The first 6 options affect only the graph-based part of the algo
                           sigma = 1.0,
                           max_iterations = 40,
                           kay = 0.05,
                           image_normalization_required = True,
                           image_size_reduction_factor = 4,
                           min_size_for_graph_based_blobs = 4,
                           ###  The next 4 options affect only the Selective Search part of the algo
                           color_homogeneity_thresh = [20,20,20],
                           gray_var_thresh = 16000,           
                           texture_homogeneity_thresh = 120,
                           max_num_blobs_expected = 8,
                  )
            
            image_name = "images/mondrian.jpg"
            segmented_graph,color_map = rpg.graph_based_segmentation(image_name)
            rpg.visualize_segmentation_in_pseudocolor(segmented_graph[0], color_map, "graph_based" )
            merged_blobs, color_map = rpg.selective_search_for_region_proposals( segmented_graph, image_name )
            rpg.visualize_segmentation_with_mean_gray(merged_blobs, "ss_based_segmentation_in_bw" )

    
          


            

Raw data

            {
    "_id": null,
    "home_page": "https://engineering.purdue.edu/kak/distYOLO/YOLOLogic-2.1.2.html",
    "name": "YOLOLogic",
    "maintainer": "Avinash Kak",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "kak@purdue.edu",
    "keywords": "object detection,image segmentation,computer vision",
    "author": "Avinash Kak",
    "author_email": "kak@purdue.edu",
    "download_url": "https://files.pythonhosted.org/packages/fc/df/f93854f265e4227adfe41043f61c4f496feafc1b24a746d9a76c7fc0193c/YOLOLogic-2.1.2.tar.gz",
    "platform": "All platforms",
    "description": "\n\nConsult the module API page at\n\n      https://engineering.purdue.edu/kak/distYOLO/YOLOLogic-2.1.2.html\n\nfor all information related to this module, including information related\nto the latest changes to the code.  The page at the URL shown above lists\nall of the module functionality you can invoke in your own code.\n\n::\n\n        Single-Instance and Multi-Instance Object Detection:\n    \n            Say you wish to experiment with YOLO-like logic for multi-instance\n            object detection, you would need to construct an instance of the\n            YOLOLogic class and invoke the methods shown below on\n            this instance:\n        \n            rpg = YOLOLogic(\n                              dataroot = \"./data/\",\n                              image_size = [128,128],\n                              yolo_interval = 20,\n                              path_saved_yolo_model = \"./saved_yolo_model\",\n                              momentum = 0.9,\n                              learning_rate = 1e-6,\n                              epochs = 40,\n                              batch_size = 4,\n                              classes = ('Dr_Eval','house','watertower'),\n                              use_gpu = True,\n                          )\n            yolo = YOLOLogic.YoloLikeDetector( rpg = rpg )\n            yolo.set_dataloaders(train=True)\n            yolo.set_dataloaders(test=True)\n            model = yolo.NetForYolo(skip_connections=True, depth=8) \n            model = yolo.run_code_for_training_multi_instance_detection(model, display_images=False)\n            yolo.run_code_for_training_multi_instance_detection(model, display_images = True)\n            \n    \n        Graph-Based Algorithms for Region Proposals:\n    \n            To generate region proposals, you would need to construct an instance\n            of the YOLOLogic class and invoke the methods shown below\n            on this instance:\n        \n            rpg = YOLOLogic(\n                           ###  The first 6 options affect only the graph-based part of the algo\n                           sigma = 1.0,\n                           max_iterations = 40,\n                           kay = 0.05,\n                           image_normalization_required = True,\n                           image_size_reduction_factor = 4,\n                           min_size_for_graph_based_blobs = 4,\n                           ###  The next 4 options affect only the Selective Search part of the algo\n                           color_homogeneity_thresh = [20,20,20],\n                           gray_var_thresh = 16000,           \n                           texture_homogeneity_thresh = 120,\n                           max_num_blobs_expected = 8,\n                  )\n            \n            image_name = \"images/mondrian.jpg\"\n            segmented_graph,color_map = rpg.graph_based_segmentation(image_name)\n            rpg.visualize_segmentation_in_pseudocolor(segmented_graph[0], color_map, \"graph_based\" )\n            merged_blobs, color_map = rpg.selective_search_for_region_proposals( segmented_graph, image_name )\n            rpg.visualize_segmentation_with_mean_gray(merged_blobs, \"ss_based_segmentation_in_bw\" )\n\n    \n          \n\n",
    "bugtrack_url": null,
    "license": "Python Software Foundation License",
    "summary": "An educational module for experimenting with the YOLO logic for multi-instance object detection and for generating region proposals with graph-based algorithms",
    "version": "2.1.2",
    "project_urls": {
        "Download": "https://engineering.purdue.edu/kak/distYOLO/YOLOLogic-2.1.2.tar.gz",
        "Homepage": "https://engineering.purdue.edu/kak/distYOLO/YOLOLogic-2.1.2.html"
    },
    "split_keywords": [
        "object detection",
        "image segmentation",
        "computer vision"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fcdff93854f265e4227adfe41043f61c4f496feafc1b24a746d9a76c7fc0193c",
                "md5": "7a5cad8ba360a7a9611f7e81ca43831e",
                "sha256": "8f33c0e8c95b200ea31d6baef55930dd4665e803ebba16aaecdfe66fb642e342"
            },
            "downloads": -1,
            "filename": "YOLOLogic-2.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "7a5cad8ba360a7a9611f7e81ca43831e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 363223,
            "upload_time": "2024-02-21T05:17:09",
            "upload_time_iso_8601": "2024-02-21T05:17:09.673055Z",
            "url": "https://files.pythonhosted.org/packages/fc/df/f93854f265e4227adfe41043f61c4f496feafc1b24a746d9a76c7fc0193c/YOLOLogic-2.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-21 05:17:09",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "yolologic"
}
        
Elapsed time: 0.38242s