YOLOX | performance anchor-free YOLO | Computer Vision library

 by   Megvii-BaseDetection Python Version: 0.3.0 License: Apache-2.0

kandi X-RAY | YOLOX Summary

kandi X-RAY | YOLOX Summary

YOLOX is a Python library typically used in Artificial Intelligence, Computer Vision, Deep Learning, Pytorch applications. YOLOX has no bugs, it has no vulnerabilities, it has build file available, it has a Permissive License and it has medium support. You can install using 'pip install YOLOX' or download it from GitHub, PyPI.

YOLOX is an anchor-free version of YOLO, with a simpler design but better performance! It aims to bridge the gap between research and industrial communities. For more details, please refer to our report on Arxiv. This repo is an implementation of PyTorch version YOLOX, there is also a MegEngine implementation.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              YOLOX has a medium active ecosystem.
              It has 8231 star(s) with 1991 fork(s). There are 72 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 623 open issues and 772 have been closed. On average issues are closed in 19 days. There are 27 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of YOLOX is 0.3.0

            kandi-Quality Quality

              YOLOX has 0 bugs and 0 code smells.

            kandi-Security Security

              YOLOX has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              YOLOX code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              YOLOX is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              YOLOX releases are available to install and integrate.
              Deployable package is available in PyPI.
              Build file is available. You can build the component from source.
              Installation instructions, examples and code snippets are available.
              It has 7010 lines of code, 363 functions and 89 files.
              It has medium code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed YOLOX and discovered the below as its top functions. This is intended to give you an instant insight into YOLOX implemented functionality, and help decide if they suit your requirements.
            • Calculate the loss function for predictions .
            • Evaluate the annotations of the given detector .
            • Run single evaluation .
            • Perform mixup .
            • Get data loader .
            • Initialize the model .
            • Evaluate prediction .
            • Launch training .
            • Return a function that returns the learning rate function .
            • Evaluate the VOC .
            Get all kandi verified functions for this library.

            YOLOX Key Features

            No Key Features are available at this moment for YOLOX.

            YOLOX Examples and Code Snippets

            Model,Quick Start
            Pythondot img1Lines of Code : 64dot img1License : Permissive (MIT)
            copy iconCopy
            pip install -r requirements.txt
            
            pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
            
            git clone https://github.com/xuarehere/yolovx_deepsort_pytorch.git
            
            cd detector/YOLOv3/weight/
            wget https://pjreddie.com/media/files/yolov3.  
            YoloX的支持
            C++dot img2Lines of Code : 37dot img2no licencesLicense : No License
            copy iconCopy
            git clone git@github.com:Megvii-BaseDetection/YOLOX.git
            cd YOLOX
            
            # yolox/models/yolo_head.py的206行forward函数,替换为下面代码
            # self.hw = [x.shape[-2:] for x in outputs]
            self.hw = [list(map(int, x.shape[-2:])) for x in outputs]
            
            
            # yolox/models/yolo_head.py的20  
            预测步骤,b、使用自己训练的权重
            Pythondot img3Lines of Code : 37dot img3License : Permissive (MIT)
            copy iconCopy
            _defaults = {
                #--------------------------------------------------------------------------#
                #   使用自己训练好的模型进行预测一定要修改model_path和classes_path!
                #   model_path指向logs文件夹下的权值文件,classes_path指向model_data下的txt
                #   如果出现shape不匹配,同时要注意训练时的model_pat  

            Community Discussions

            QUESTION

            Image similarity in swift
            Asked 2022-Mar-25 at 11:42

            The swift vision similarity feature is able to assign a number to the variance between 2 images. Where 0 variance between the images, means the images are the same. As the number increases this that there is more and more variance between the images.

            What I am trying to do is turn this into a percentage of similarity. So one image is for example 80% similar to the other image. Any ideas how I could arrange the logic to accomplish this:

            ...

            ANSWER

            Answered 2022-Mar-25 at 10:26

            It depends on how you want to scale it. If you just want the percentage you could just use Float.greatestFiniteMagnitude as the maximum value.

            Source https://stackoverflow.com/questions/71615277

            QUESTION

            When using pandas_profiling: "ModuleNotFoundError: No module named 'visions.application'"
            Asked 2022-Mar-22 at 13:26
            import numpy as np
            import pandas as pd
            from pandas_profiling import ProfileReport
            
            ...

            ANSWER

            Answered 2022-Mar-22 at 13:26

            It appears that the 'visions.application' module was available in v0.7.1

            https://github.com/dylan-profiler/visions/tree/v0.7.1/src/visions

            But it's no longer available in v0.7.2

            https://github.com/dylan-profiler/visions/tree/v0.7.2/src/visions

            It also appears that the pandas_profiling project has been updated, the file summary.py no longer tries to do this import.

            In summary: use visions version v0.7.1 or upgrade pandas_profiling.

            Source https://stackoverflow.com/questions/71568414

            QUESTION

            Classify handwritten text using Google Cloud Vision
            Asked 2022-Mar-01 at 00:36

            I'm exploring Google Cloud Vision to detect handwriting in text. I see that the model is quite accurate in read handwritten text.

            I'm following this guide: https://cloud.google.com/vision/docs/handwriting

            Here is my question: is there a way to discover in the responses if the text is handwritten or typed?

            A parameter or something in the response useful to classify images?

            Here is the request:

            ...

            ANSWER

            Answered 2022-Mar-01 at 00:36

            It seems that there's already an open discussion with the Google team to get this Feature Request addressed:

            https://issuetracker.google.com/154156890

            I would recommend you to comment on the Public issue tracker and indicate that "you are affected to this issue" to gain visibility and push for get this change done.

            Other that that I'm unsure is that can be implemented locally.

            Source https://stackoverflow.com/questions/71296897

            QUESTION

            cv2 findChessboardCorners does not detect corners
            Asked 2022-Jan-29 at 23:59

            I want to try out this tutorial and therefore used the code from here in order to calibrate my camera. I use this image:

            The only thing I adapted was chessboard_size = (14,9) so that it matches the corners of my image. I don't know what I do wrong. I tried multiple chessboard pattern and cameras but still cv2.findChessboardCorners always fails detecting corners. Any help would be highly appreciated.

            ...

            ANSWER

            Answered 2022-Jan-29 at 23:59

            Finally I could do it. I had to set chessboard_size = (12,7) then it worked. I had to count the internal number of horizontal and vertical corners.

            Source https://stackoverflow.com/questions/70907902

            QUESTION

            Fastest way to get the RGB average inside of a non-rectangular contour in the CMSampleBuffer
            Asked 2022-Jan-26 at 02:12

            I am trying to get the RGB average inside of a non-rectangular multi-edge (closed) contour generated over a face landmark region in the frame (think of it as a face contour) from AVCaptureVideoDataOutput. I currently have the following code,

            ...

            ANSWER

            Answered 2022-Jan-26 at 02:12

            If you could make all pixels outside of the contour transparent then you could use CIKmeans filter with inputCount equal 1 and the inputExtent set to the extent of the frame to get the average color of the area inside the contour (the output of the filter will contain 1-pixel image and the color of the pixel is what you are looking for).

            Now, to make all pixels transparent outside of the contour, you could do something like this:

            1. Create a mask image but setting all pixels inside the contour white and black outside (set background to black and fill the path with white).
            2. Use CIBlendWithMask filter where:
              • inputBackgroundImage is a fully transparent (clear) image
              • inputImage is the original frame
              • inputMaskImage is the mask you created above

            The output of that filter will give you the image with all pixels outside the contour fully transparent. And now you can use the CIKMeans filter with it as described at the beginning.

            BTW, if you want to play with every single of the 230 filters out there check this app out: https://apps.apple.com/us/app/filter-magic/id1594986951

            UPDATE:

            CIFilters can only work with CIImages. So the mask image has to be a CIImage as well. One way to do that is to create a CGImage from CAShapeLayer containing the mask and then create CIImage out of it. Here is how the code could look like:

            Source https://stackoverflow.com/questions/70344336

            QUESTION

            UIViewController can't override method from it's superclass
            Asked 2022-Jan-21 at 19:37

            I am actually experimenting with the Vision Framework. I have simply an UIImageView in my Storyboard and my class is from type UIViewController. But when I try to override viewDidAppear(_ animated: Bool) I get the error message: Method does not override any method from its superclass Do anyone know what the issue is? Couldn't find anything that works for me...

            ...

            ANSWER

            Answered 2022-Jan-21 at 19:37

            This is my complete code:

            Source https://stackoverflow.com/questions/70804364

            QUESTION

            X and Y-axis swapped in Vision Framework Swift
            Asked 2021-Dec-23 at 14:33

            I'm using Vision Framework to detecting faces with iPhone's front camera. My code looks like

            ...

            ANSWER

            Answered 2021-Dec-23 at 14:33

            For some reason, remove

            Source https://stackoverflow.com/questions/70463081

            QUESTION

            Swift's Vision framework not recognizing Japanese characters
            Asked 2021-Oct-12 at 23:37

            I would like to read Japanese characters from a scanned image using swift's Vision framework. However, when I attempt to set the recognition language of VNRecognizeTextRequest to Japanese using

            request.recognitionLanguages = ["ja", "en"]

            the output of my program becomes nonsensical roman letters. For each image of japanese text there is unexpected recognized text output. However, when set to other languages such as Chinese or German the text output is as expected. What could be causing the unexpected output seemingly peculiar to Japanese?

            I am building from the github project here.

            ...

            ANSWER

            Answered 2021-Oct-12 at 23:37

            As they said in WWDC 2019 video, Text Recognition in Vision Framework:

            First, a prerequisite, you need to check the languages that are supported by language-based correction...

            Look at supportedRecognitionLanguages for VNRecognizeTextRequestRevision2 for “accurate” recognition, and it would appear that the supported languages are:

            Source https://stackoverflow.com/questions/69546997

            QUESTION

            Boxing large objects in image containing both large and small objects of similar color and in high density from a picture
            Asked 2021-Oct-12 at 10:58

            For my research project I'm trying to distinguish between hydra plant (the larger amoeba looking oranges things) and their brine shrimp feed (the smaller orange specks) so that we can automate the cleaning of petri dishes using a pipetting machine. An example of a snap image from the machine of the petri dish looks like so:

            I have so far applied a circle mask and an orange color space mask to create a cleaned up image so that it's mostly just the shrimp and hydra.

            There is some residual light artifacts left in the filtered image, but I have to bite the cost or else I lose the resolution of the very thin hydra such as in the top left of the original image.

            I was hoping to box and label the larger hydra plants but couldn't find much applicable literature for differentiating between large and small objects of similar attributes in an image, to achieve my goal.

            I don't want to approach this using ML because I don't have the manpower or a large enough dataset to make a good training set, so I would truly appreciate some easier vision processing tools. I can afford to lose out on the skinny hydra, just if I can know of a simpler way to identify the more turgid, healthy hydra from the already cleaned up image that would be great.

            I have seen some content about using openCV findCountours? Am I on the right track?

            Attached is the code I have so you know what datatypes I'm working with.

            ...

            ANSWER

            Answered 2021-Oct-12 at 10:58

            You are on the right track, but I have to be honest. Without DeepLearning you will get good results but not perfect.

            That's what I managed to get using contours:

            Code:

            Source https://stackoverflow.com/questions/69503515

            QUESTION

            Create a LabVIEW IMAQ image from a binary buffer/file with and without NI Vision
            Asked 2021-Sep-30 at 13:54

            Assume you have a binary buffer or file which represents a 2-dimensional image.

            How can you convert the binary data into a IMAQ image for further processing using LabVIEW?

            ...

            ANSWER

            Answered 2021-Sep-30 at 13:54
            With NI Vision

            For LabVIEW users who have the NI vision library installed, there are VIs that allow for the image data of an IMAQ image to be copied from a 2D array.

            For single-channel images (U8, U16, I16, float) the VI is

            Vision and Motion >> Vision Utilites >> Pixel Manipulation >> IMAQ ArrayToImage.vi

            For multichannel images (RGB etc) the VI is

            Vision and Motion >> Vision Utilites >> Color Utilities >> IMAQ ArrayColorToImage.vi

            Example 1

            An example of using the IMAQ ArrayToImage.vi is shown in the snippet below where U16 data is read from a binary file and written to a Greyscale U16 type IMAQ image. Please note, if the file has been created by other software than LabVIEW then it is likely that it will have to be read in little-endian format which is specified for the Read From Binary File.vi

            Example 2

            A similar process can be used when some driver DLL call is used to get the image data as a buffer. For example, if the driver has a function capture(unsigned short * buffer) then the following technique could be employed where a correctly sized array is initialized before the function call using the initialize array primitive.

            Source https://stackoverflow.com/questions/69380393

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install YOLOX

            Step1. Install YOLOX from source. Step1. Download a pretrained model from the benchmark table.
            -d: number of gpu devices
            -b: total batch size, the recommended number for -b is num-gpu * 8
            --fp16: mixed precision training
            --cache: caching imgs into RAM to accelarate training, which need large system RAM.
            --num_machines: num of your total training nodes
            --machine_rank: specify the rank of each node
            --fuse: fuse conv and bn
            -d: number of GPUs used for evaluation. DEFAULT: All GPUs available will be used.
            -b: total batch size across on all GPUs
            Training on custom data
            Manipulating training image size

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            Install
          • PyPI

            pip install yolox

          • CLONE
          • HTTPS

            https://github.com/Megvii-BaseDetection/YOLOX.git

          • CLI

            gh repo clone Megvii-BaseDetection/YOLOX

          • sshUrl

            git@github.com:Megvii-BaseDetection/YOLOX.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Consider Popular Computer Vision Libraries

            opencv

            by opencv

            tesseract

            by tesseract-ocr

            face_recognition

            by ageitgey

            tesseract.js

            by naptha

            Detectron

            by facebookresearch

            Try Top Libraries by Megvii-BaseDetection

            cvpods

            by Megvii-BaseDetectionPython

            BEVDepth

            by Megvii-BaseDetectionPython

            BorderDet

            by Megvii-BaseDetectionPython

            DeFCN

            by Megvii-BaseDetectionPython

            DynamicRouting

            by Megvii-BaseDetectionPython