CoreML-Models
Converted CoreML Model Zoo.
CoreML is a machine learning framework by Apple. If you are iOS developer, you can easly use machine learning models in your Xcode project.
How to use
Take a look this model zoo, and if you found the CoreML model you want, download the model from google drive link and bundle it in your project. Or if the model have sample project link, try it and see how to use the model in the project. You are free to do or not.
If you like this repository, please give me a star so I can do my best.
Section Link
-
Stable Diffusion :text2image
How to get the model
You can get the model converted to CoreML format from the link of Google drive. See the section below for how to use it in Xcode. The license for each model conforms to the license for the original project.
Image Classifier
Efficientnet
Google Drive Link | Size | Dataset | Original Project | License |
---|---|---|---|---|
Efficientnetb0 | 22.7 MB | ImageNet | TensorFlowHub | Apache2.0 |
Efficientnetv2
Google Drive Link | Size | Dataset | Original Project | License | Year |
---|---|---|---|---|---|
Efficientnetv2 | 85.8 MB | ImageNet | Google/autoML | Apache2.0 | 2021 |
VisionTransformer
An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale.
Google Drive Link | Size | Dataset | Original Project | License | Year |
---|---|---|---|---|---|
VisionTransformer-B16 | 347.5 MB | ImageNet | google-research/vision_transformer | Apache2.0 | 2021 |
Conformer
Local Features Coupling Global Representations for Visual Recognition.
Google Drive Link | Size | Dataset | Original Project | License | Year |
---|---|---|---|---|---|
Conformer-tiny-p16 | 94.1 MB | ImageNet | pengzhiliang/Conformer | Apache2.0 | 2021 |
DeiT
Data-efficient Image Transformers
Google Drive Link | Size | Dataset | Original Project | License | Year |
---|---|---|---|---|---|
DeiT-base384 | 350.5 MB | ImageNet | facebookresearch/deit | Apache2.0 | 2021 |
RepVGG
Making VGG-style ConvNets Great Again
Google Drive Link | Size | Dataset | Original Project | License | Year |
---|---|---|---|---|---|
RepVGG-A0 | 33.3 MB | ImageNet | DingXiaoH/RepVGG | MIT | 2021 |
RegNet
Designing Network Design Spaces
Google Drive Link | Size | Dataset | Original Project | License | Year |
---|---|---|---|---|---|
regnet_y_400mf | 16.5 MB | ImageNet | TORCHVISION.MODELS | MIT | 2020 |
MobileViTv2
CVNets: A library for training computer vision networks
Google Drive Link | Size | Dataset | Original Project | License | Year | Conversion Script |
---|---|---|---|---|---|---|
MobileViTv2 | 18.8 MB | ImageNet | apple/ml-cvnets | apple | 2022 |
Object Detection
YOLOv5s
Google Drive Link | Size | Output | Original Project | License | Note | Sample Project |
---|---|---|---|---|---|---|
YOLOv5s | 29.3MB | Confidence(MultiArray (Double 0 × 80)), Coordinates (MultiArray (Double 0 × 4)) | ultralytics/yolov5 | GNU | Non Maximum Suppression has been added. | CoreML-YOLOv5 |
YOLOv7
Google Drive Link | Size | Output | Original Project | License | Note | Sample Project | Conversion Script |
---|---|---|---|---|---|---|---|
YOLOv7 | 147.9MB | Confidence(MultiArray (Double 0 × 80)), Coordinates (MultiArray (Double 0 × 4)) | WongKinYiu/yolov7 | GNU | Non Maximum Suppression has been added. | CoreML-YOLOv5 |
YOLOv8
Google Drive Link | Size | Output | Original Project | License | Note | Sample Project |
---|---|---|---|---|---|---|
YOLOv8s | 45.1MB | Confidence(MultiArray (Double 0 × 80)), Coordinates (MultiArray (Double 0 × 4)) | ultralytics/ultralytics | GNU | Non Maximum Suppression has been added. | CoreML-YOLOv5 |
Segmentation
U2Net
Google Drive Link | Size | Output | Original Project | License |
---|---|---|---|---|
U2Net | 175.9 MB | Image(GRAYSCALE 320 × 320) | xuebinqin/U-2-Net | Apache |
U2Netp | 4.6 MB | Image(GRAYSCALE 320 × 320) | xuebinqin/U-2-Net | Apache |
IS-Net
Google Drive Link | Size | Output | Original Project | License | Year | Conversion Script |
---|---|---|---|---|---|---|
IS-Net | 176.1 MB | Image(GRAYSCALE 1024 × 1024) | xuebinqin/DIS | Apache | 2022 | |
IS-Net-General-Use | 176.1 MB | Image(GRAYSCALE 1024 × 1024) | xuebinqin/DIS | Apache | 2022 |
face-Parsing
Google Drive Link | Size | Output | Original Project | License | Sample Project |
---|---|---|---|---|---|
face-Parsing | 53.2 MB | MultiArray(1 x 512 × 512) | zllrunning/face-parsing.PyTorch | MIT | CoreML-face-parsing |
Segformer
Simple and Efficient Design for Semantic Segmentation with Transformers
Google Drive Link | Size | Output | Original Project | License | year |
---|---|---|---|---|---|
SegFormer_mit-b0_1024x1024_cityscapes | 14.9 MB | MultiArray(512 × 1024) | NVlabs/SegFormer | NVIDIA | 2021 |
BiSeNetV2
Bilateral Network with Guided Aggregation for Real-time Semantic Segmentation
Google Drive Link | Size | Output | Original Project | License | year |
---|---|---|---|---|---|
BiSeNetV2_1024x1024_cityscapes | 12.8 MB | MultiArray | ycszen/BiSeNet | Apache2.0 | 2021 |
DNL
Disentangled Non-Local Neural Networks
Google Drive Link | Size | Output | Dataset | Original Project | License | year |
---|---|---|---|---|---|---|
dnl_r50-d8_512x512_80k_ade20k | 190.8 MB | MultiArray[512x512] | ADE20K | yinmh17/DNL-Semantic-Segmentation | Apache2.0 | 2020 |
ISANet
Interlaced Sparse Self-Attention for Semantic Segmentation
Google Drive Link | Size | Output | Dataset | Original Project | License | year |
---|---|---|---|---|---|---|
isanet_r50-d8_512x512_80k_ade20k | 141.5 MB | MultiArray[512x512] | ADE20K | openseg-group/openseg.pytorch | MIT | ArXiv'2019/IJCV'2021 |
FastFCN
Rethinking Dilated Convolution in the Backbone for Semantic Segmentation
Google Drive Link | Size | Output | Dataset | Original Project | License | year |
---|---|---|---|---|---|---|
fastfcn_r50-d32_jpu_aspp_512x512_80k_ade20k | 326.2 MB | MultiArray[512x512] | ADE20K | wuhuikai/FastFCN | MIT | ArXiv'2019 |
GCNet
Non-local Networks Meet Squeeze-Excitation Networks and Beyond
Google Drive Link | Size | Output | Dataset | Original Project | License | year |
---|---|---|---|---|---|---|
gcnet_r50-d8_512x512_20k_voc12aug | 189 MB | MultiArray[512x512] | PascalVOC | xvjiarui/GCNet | Apache License 2.0 | ICCVW'2019/TPAMI'2020 |
DANet
Dual Attention Network for Scene Segmentation(CVPR2019)
Google Drive Link | Size | Output | Dataset | Original Project | License | year |
---|---|---|---|---|---|---|
danet_r50-d8_512x1024_40k_cityscapes | 189.7 MB | MultiArray[512x1024] | CityScapes | junfu1115/DANet | MIT | CVPR2019 |
Semantic-FPN
Panoptic Feature Pyramid Networks
Google Drive Link | Size | Output | Dataset | Original Project | License | year |
---|---|---|---|---|---|---|
fpn_r50_512x1024_80k_cityscapes | 108.6 MB | MultiArray[512x1024] | CityScapes | facebookresearch/detectron2 | Apache License 2.0 | 2019 |
cloths_segmentation
Code for binary segmentation of various cloths.
Google Drive Link | Size | Output | Dataset | Original Project | License | year |
---|---|---|---|---|---|---|
clothSegmentation | 50.1 MB | Image(GrayScale 640x960) | fashion-2019-FGVC6 | facebookresearch/detectron2 | MIT | 2020 |
Super Resolution
Real ESRGAN
Google Drive Link | Size | Output | Original Project | License | year |
---|---|---|---|---|---|
Real ESRGAN4x | 66.9 MB | Image(RGB 2048x2048) | xinntao/Real-ESRGAN | BSD 3-Clause License | 2021 |
Real ESRGAN Anime4x | 66.9 MB | Image(RGB 2048x2048) | xinntao/Real-ESRGAN | BSD 3-Clause License | 2021 |
GFPGAN
Towards Real-World Blind Face Restoration with Generative Facial Prior
Google Drive Link | Size | Output | Original Project | License | year |
---|---|---|---|---|---|
GFPGAN | 337.4 MB | Image(RGB 512x512) | TencentARC/GFPGAN | Apache2.0 | 2021 |
BSRGAN
Google Drive Link | Size | Output | Original Project | License | year |
---|---|---|---|---|---|
BSRGAN | 66.9 MB | Image(RGB 2048x2048) | cszn/BSRGAN | 2021 |
A-ESRGAN
Google Drive Link | Size | Output | Original Project | License | year | Conversion Script |
---|---|---|---|---|---|---|
A-ESRGAN | 63.8 MB | Image(RGB 1024x1024) | aesrgan/A-ESRGANN | BSD 3-Clause License | 2021 |
Beby-GAN
Best-Buddy GANs for Highly Detailed Image Super-Resolution
Google Drive Link | Size | Output | Original Project | License | year |
---|---|---|---|---|---|
Beby-GAN | 66.9 MB | Image(RGB 2048x2048) | dvlab-research/Simple-SR | MIT | 2021 |
RRDN
The Residual in Residual Dense Network for image super-scaling.
Google Drive Link | Size | Output | Original Project | License | year |
---|---|---|---|---|---|
RRDN | 16.8 MB | Image(RGB 2048x2048) | idealo/image-super-resolution | Apache2.0 | 2018 |
Fast-SRGAN
Fast-SRGAN.
Google Drive Link | Size | Output | Original Project | License | year |
---|---|---|---|---|---|
Fast-SRGAN | 628 KB | Image(RGB 1024x1024) | HasnainRaz/Fast-SRGAN | MIT | 2019 |
ESRGAN
Enhanced-SRGAN.
Google Drive Link | Size | Output | Original Project | License | year |
---|---|---|---|---|---|
ESRGAN | 66.9 MB | Image(RGB 2048x2048) | xinntao/ESRGAN | Apache 2.0 | 2018 |
SRGAN
Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network.
Google Drive Link | Size | Output | Original Project | License | year |
---|---|---|---|---|---|
SRGAN | 6.1 MB | Image(RGB 2048x2048) | dongheehand/SRGAN-PyTorch | 2017 |
SRResNet
Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network.
Google Drive Link | Size | Output | Original Project | License | year |
---|---|---|---|---|---|
SRResNet | 6.1 MB | Image(RGB 2048x2048) | dongheehand/SRGAN-PyTorch | 2017 |
LESRCNN
Lightweight Image Super-Resolution with Enhanced CNN.
Google Drive Link | Size | Output | Original Project | License | year | Conversion Script |
---|---|---|---|---|---|---|
LESRCNN | 4.3 MB | Image(RGB 512x512) | hellloxiaotian/LESRCNN | 2020 |
MMRealSR
Metric Learning based Interactive Modulation for Real-World Super-Resolution
Google Drive Link | Size | Output | Original Project | License | year | Conversion Script |
---|---|---|---|---|---|---|
MMRealSRGAN | 104.6 MB | Image(RGB 1024x1024) | TencentARC/MM-RealSR | BSD 3-Clause | 2022 | |
MMRealSRNet | 104.6 MB | Image(RGB 1024x1024) | TencentARC/MM-RealSR | BSD 3-Clause | 2022 |
Low Light Enhancement
StableLLVE
Learning Temporal Consistency for Low Light Video Enhancement from Single Images.
Google Drive Link | Size | Output | Original Project | License | Year |
---|---|---|---|---|---|
StableLLVE | 17.3 MB | Image(RGB 512x512) | zkawfanx/StableLLVE | MIT | 2021 |
Zero-DCE
Zero-Reference Deep Curve Estimation for Low-Light Image Enhancement
Google Drive Link | Size | Output | Original Project | License | Year | Conversion Script |
---|---|---|---|---|---|---|
Zero-DCE | 320KB | Image(RGB 512x512) | Li-Chongyi/Zero-DCE | See Repo | 2021 |
Image Restoration
MPRNet
Multi-Stage Progressive Image Restoration.
Debluring
Denoising
Deraining
Google Drive Link | Size | Output | Original Project | License | Year |
---|---|---|---|---|---|
MPRNetDebluring | 137.1 MB | Image(RGB 512x512) | swz30/MPRNet | MIT | 2021 |
MPRNetDeNoising | 108 MB | Image(RGB 512x512) | swz30/MPRNet | MIT | 2021 |
MPRNetDeraining | 24.5 MB | Image(RGB 512x512) | swz30/MPRNet | MIT | 2021 |
MIRNetv2
Learning Enriched Features for Fast Image Restoration and Enhancement.
Denoising
Super Resolution
Contrast Enhancement
Low Light Enhancement
Google Drive Link | Size | Output | Original Project | License | Year | Conversion Script |
---|---|---|---|---|---|---|
MIRNetv2Denoising | 42.5 MB | Image(RGB 512x512) | swz30/MIRNetv2 | ACADEMIC PUBLIC LICENSE | 2022 | |
MIRNetv2SuperResolution | 42.5 MB | Image(RGB 512x512) | swz30/MIRNetv2 | ACADEMIC PUBLIC LICENSE | 2022 | |
MIRNetv2ContrastEnhancement | 42.5 MB | Image(RGB 512x512) | swz30/MIRNetv2 | ACADEMIC PUBLIC LICENSE | 2022 | |
MIRNetv2LowLightEnhancement | 42.5 MB | Image(RGB 512x512) | swz30/MIRNetv2 | ACADEMIC PUBLIC LICENSE | 2022 |
Image Generation
MobileStyleGAN
Google Drive Link | Size | Output | Original Project | License | Sample Project |
---|---|---|---|---|---|
MobileStyleGAN | 38.6MB | Image(Color 1024 × 1024) | bes-dev/MobileStyleGAN.pytorch | Nvidia Source Code License-NC | CoreML-StyleGAN |
DCGAN
Google Drive Link | Size | Output | Original Project |
---|---|---|---|
DCGAN | 9.2MB | MultiArray | TensorFlowCore |
Image2Image
Anime2Sketch
Google Drive Link | Size | Output | Original Project | License | Usage |
---|---|---|---|---|---|
Anime2Sketch | 217.7MB | Image(Color 512 × 512) | Mukosame/Anime2Sketch | MIT | Drop an image to preview |
AnimeGAN2Face_Paint_512_v2
Google Drive Link | Size | Output | Original Project | Conversion Script |
---|---|---|---|---|
AnimeGAN2Face_Paint_512_v2 | 8.6MB | Image(Color 512 × 512) | bryandlee/animegan2-pytorch |
Photo2Cartoon
Google Drive Link | Size | Output | Original Project | License | Note |
---|---|---|---|---|---|
Photo2Cartoon | 15.2 MB | Image(Color 256 × 256) | minivision-ai/photo2cartoon | MIT | The output is little bit different from the original model. It cause some operations were converted replaced manually. |
AnimeGANv2_Hayao
Google Drive Link | Size | Output | Original Project |
---|---|---|---|
AnimeGANv2_Hayao | 8.7MB | Image(256 x 256) | TachibanaYoshino/AnimeGANv2 |
AnimeGANv2_Paprika
Google Drive Link | Size | Output | Original Project |
---|---|---|---|
AnimeGANv2_Paprika | 8.7MB | Image(256 x 256) | TachibanaYoshino/AnimeGANv2 |
WarpGAN Caricature
Google Drive Link | Size | Output | Original Project |
---|---|---|---|
WarpGAN Caricature | 35.5MB | Image(256 x 256) | seasonSH/WarpGAN |
UGATIT_selfie2anime
Google Drive Link | Size | Output | Original Project |
---|---|---|---|
UGATIT_selfie2anime | 266.2MB(quantized) | Image(256x256) | taki0112/UGATIT |
CartoonGAN
Google Drive Link | Size | Output | Original Project |
---|---|---|---|
CartoonGAN_Shinkai | 44.6MB | MultiArray | mnicnc404/CartoonGan-tensorflow |
CartoonGAN_Hayao | 44.6MB | MultiArray | mnicnc404/CartoonGan-tensorflow |
CartoonGAN_Hosoda | 44.6MB | MultiArray | mnicnc404/CartoonGan-tensorflow |
CartoonGAN_Paprika | 44.6MB | MultiArray | mnicnc404/CartoonGan-tensorflow |
Fast-Neural-Style-Transfer
Google Drive Link | Size | Output | Original Project | License | Year |
---|---|---|---|---|---|
fast-neural-style-transfer-cuphead | 6.4MB | Image(RGB 960x640) | eriklindernoren/Fast-Neural-Style-Transfer | MIT | 2019 |
fast-neural-style-transfer-starry-night | 6.4MB | Image(RGB 960x640) | eriklindernoren/Fast-Neural-Style-Transfer | MIT | 2019 |
fast-neural-style-transfer-mosaic | 6.4MB | Image(RGB 960x640) | eriklindernoren/Fast-Neural-Style-Transfer | MIT | 2019 |
White_box_Cartoonization
Learning to Cartoonize Using White-box Cartoon Representations
Google Drive Link | Size | Output | Original Project | License | Year |
---|---|---|---|---|---|
White_box_Cartoonization | 5.9MB | Image(1536x1536) | SystemErrorWang/White-box-Cartoonization | creativecommons | CVPR2020 |
FacialCartoonization
White-box facial image cartoonizaiton
Google Drive Link | Size | Output | Original Project | License | Year |
---|---|---|---|---|---|
FacialCartoonization | 8.4MB | Image(256x256) | SystemErrorWang/FacialCartoonization | creativecommons | 2020 |
Inpainting
AOT-GAN-for-Inpainting
Google Drive Link | Size | Output | Original Project | License | Note | Sample Project |
---|---|---|---|---|---|---|
AOT-GAN-for-Inpainting | 60.8MB | MLMultiArray(3,512,512) | researchmm/AOT-GAN-for-Inpainting | Apache2.0 | To use see sample. | john-rocky/Inpainting-CoreML |
Monocular Depth Estimation
MiDaS
Towards Robust Monocular Depth Estimation: Mixing Datasets for Zero-shot Cross-dataset Transfer
Google Drive Link | Size | Output | Original Project | License | Year | Conversion Script |
---|---|---|---|---|---|---|
MiDaS_Small | 66.3MB | MultiArray(1x256x256) | isl-org/MiDaS | MIT | 2022 |
Stable Diffusion
stable-diffusion-v1-5
Google Drive Link | Original Model | Original Project | License | Run on mac | Conversion Script | Year |
---|---|---|---|---|---|---|
stable-diffusion-v1-5 | runwayml/stable-diffusion-v1-5 | runwayml/stable-diffusion | Open RAIL M license | godly-devotion/MochiDiffusion | godly-devotion/MochiDiffusion | 2022 |
pastel-mix
Pastel Mix - a stylized latent diffusion model.This model is intended to produce high-quality, highly detailed anime style with just a few prompts.
Google Drive Link | Original Model | License | Run on mac | Conversion Script | Year |
---|---|---|---|---|---|
pastelMixStylizedAnime_pastelMixPrunedFP16 | andite/pastel-mix | Fantasy.ai | godly-devotion/MochiDiffusion | godly-devotion/MochiDiffusion | 2023 |
Orange Mix
Google Drive Link | Original Model | License | Run on mac | Conversion Script | Year |
---|---|---|---|---|---|
AOM3_orangemixs | WarriorMama777/OrangeMixs | CreativeML OpenRAIL-M | godly-devotion/MochiDiffusion | godly-devotion/MochiDiffusion | 2023 |
Counterfeit
Google Drive Link | Original Model | License | Run on mac | Conversion Script | Year |
---|---|---|---|---|---|
Counterfeit-V2.5 | gsdf/Counterfeit-V2.5 | - | godly-devotion/MochiDiffusion | godly-devotion/MochiDiffusion | 2023 |
anything-v4
Google Drive Link | Original Model | License | Run on mac | Conversion Script | Year |
---|---|---|---|---|---|
anything-v4.5 | andite/anything-v4.0 | Fantasy.ai | godly-devotion/MochiDiffusion | godly-devotion/MochiDiffusion | 2023 |
Openjourney
Google Drive Link | Original Model | License | Run on mac | Conversion Script | Year |
---|---|---|---|---|---|
Openjourney | prompthero/openjourney | - | godly-devotion/MochiDiffusion | godly-devotion/MochiDiffusion | 2023 |
dreamlike-photoreal-2
Google Drive Link | Original Model | License | Run on mac | Conversion Script | Year |
---|---|---|---|---|---|
dreamlike-photoreal-2.0 | dreamlike-art/dreamlike-photoreal-2.0 | CreativeML OpenRAIL-M | godly-devotion/MochiDiffusion | godly-devotion/MochiDiffusion | 2023 |
Models converted by someone other than me.
Stable Diffusion
How to use in a xcode project.
Option 1,implement Vision request.
import Vision
lazy var coreMLRequest:VNCoreMLRequest = {
let model = try! VNCoreMLModel(for: modelname().model)
let request = VNCoreMLRequest(model: model, completionHandler: self.coreMLCompletionHandler)
return request
}()
let handler = VNImageRequestHandler(ciImage: ciimage,options: [:])
DispatchQueue.global(qos: .userInitiated).async {
try? handler.perform([coreMLRequest])
}
If the model has Image type output:
let result = request?.results?.first as! VNPixelBufferObservation
let uiimage = UIImage(ciImage: CIImage(cvPixelBuffer: result.pixelBuffer))
Else the model has Multiarray type output:
For visualizing multiArray as image, Mr. Hollance’s “CoreML Helpers” are very convenient. CoreML Helpers
Converting from MultiArray to Image with CoreML Helpers.
func coreMLCompletionHandler(request:VNRequest?、error:Error?){
let = coreMLRequest.results?.first as!VNCoreMLFeatureValueObservation
let multiArray = result.featureValue.multiArrayValue
let cgimage = multiArray?.cgImage(min:-1、max:1、channel:nil)
CoreGANContainer. You can use models with dragging&dropping into the container project.
Option 2,UseMake the model lighter
You can make the model size lighter with Quantization if you want. https://coremltools.readme.io/docs/quantization
The lower the number of bits, more the chances of degrading the model accuracy. The loss in accuracy varies with the model.
import coremltools as ct
from coremltools.models.neural_network import quantization_utils
# load full precision model
model_fp32 = ct.models.MLModel('model.mlmodel')
model_fp16 = quantization_utils.quantize_weights(model_fp32, nbits=16)
# nbits can be 16(half size model), 8(1/4), 4(1/8), 2, 1
quantized sample (U2Net)
InputImage / nbits=32(original) / nbits=16 / nbits=8 / nbits=4
Thanks
Cover image was taken from Ghibli free images.
On YOLOv5 convertion, dbsystel/yolov5-coreml-tools give me the super inteligent convert script.
And all of original projects
Auther
Daisuke Majima Freelance engineer. iOS/MachineLearning/AR I can work on mobile ML projects and AR project. Feel free to contact: [email protected]