print("classes: " + str(len(training_map)))
net = mobilenet1_0(classes=len(training_map))

from mxnet import init
net.features = pretrained_net.features
net.output.initialize(init.Xavier())

from mxnet.image import color_normalize
from mxnet import image

train_augs = [
    image.HorizontalFlipAug(0.5),
    image.BrightnessJitterAug(.3),
    image.HueJitterAug(.1)
]
test_augs = [image.ResizeAug(224), image.CenterCropAug((224, 224))]


def transform(data, label, augs):
    data = data.astype('float32')
    for aug in augs:
        data = aug(data)
    data = nd.transpose(data, (2, 0, 1))
    return data, nd.array([label]).asscalar().astype('float32')


from mxnet.gluon.data.vision import ImageRecordDataset

train_rec = root + '/data/household/train/household.rec'
validation_rec = root + '/data/household/validation/household.rec'
test_rec = root + '/data/household/test/household.rec'
Example #2
0
example: ipython classify_image.py ~/projects/images/pools/models/pools_n10.params 'pool' 'no pool'
'''

# Dependencies
import mxnet as mx
from mxnet import image
from mxnet.image import color_normalize
import matplotlib.pyplot as plt
from mxnet.gluon.model_zoo.vision import mobilenet1_0
import requests
from io import BytesIO
from mxnet import nd
import sys

# Global Constants ----
test_augs = [image.ResizeAug(224)]
ctx = mx.cpu()


# Functions ----
def predict(net, url, label1, label0, show_img=False):
    data = read_image(url)
    data = data.expand_dims(axis=0)
    data = color_normalize(data / 255,
                           mean=nd.array([0.485, 0.456, 0.406]).reshape(
                               (1, 3, 1, 1)),
                           std=nd.array([0.229, 0.224, 0.225]).reshape(
                               (1, 3, 1, 1)))
    out = softmax(net(data.as_in_context(mx.cpu())))
    prediction = [label0, label1][int(nd.argmax(out, axis=1).asscalar())]
    print('Probability of {}: {}'.format(label1, out[0][1].asscalar()))
Example #3
0
from mxnet.image import color_normalize
from mxnet.gluon.model_zoo.vision import mobilenet1_0
from mxnet import image
from mxnet import init
from mxnet import gluon
import time
from mxnet import autograd
from mxnet import nd
from mxnet.gluon.data.vision import ImageRecordDataset


# Global constants ----
ctx = mx.cpu()

train_augs = [
    image.ResizeAug(224),
    image.HorizontalFlipAug(0.5),  # flip the image horizontally
    image.BrightnessJitterAug(.3), # randomly change the brightness
    image.HueJitterAug(.1)         # randomly change hue
]
test_augs = [
    image.ResizeAug(224)
]


# Functions ----
def transform(data, label, augs):
    # applies augmentations to img data
    data = data.astype('float32')
    for aug in augs:
        data = aug(data)