Initial codelab project. Signed-off-by: Dave Smith <smithdave@google.com> Change-Id: I47bf8723ad61e90e1256bbcb833ad15503b47346
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..ae4e043 --- /dev/null +++ b/CONTRIBUTING.md
@@ -0,0 +1,28 @@ +# How to Contribute + +We'd love to accept your patches and contributions to this project. There are +just a few small guidelines you need to follow. + +## Contributor License Agreement + +Contributions to this project must be accompanied by a Contributor License +Agreement. You (or your employer) retain the copyright to your contribution; +this simply gives us permission to use and redistribute your contributions as +part of the project. Head over to <https://cla.developers.google.com/> to see +your current agreements on file or to sign a new one. + +You generally only need to submit a CLA once, so if you've already submitted one +(even if it was for a different project), you probably don't need to do it +again. + +## Code reviews + +All submissions, including submissions by project members, require review. We +use GitHub pull requests for this purpose. Consult +[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more +information on using pull requests. + +## Community Guidelines + +This project follows [Google's Open Source Community +Guidelines](https://opensource.google.com/conduct/). \ No newline at end of file
diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..bd97b64 --- /dev/null +++ b/LICENSE
@@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2019, Google LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License.
diff --git a/README.md b/README.md new file mode 100644 index 0000000..141c5fb --- /dev/null +++ b/README.md
@@ -0,0 +1,25 @@ +# Coral Edge TPU Image Classifer Codelab + +This folder contains the source code for the +[Edge TPU Classifier codelab](https://codelabs.developers.google.com/codelabs/edgetpu-classifier) + +### License + +``` +Copyright 2019 Google LLC + +Licensed to the Apache Software Foundation (ASF) under one or more contributor +license agreements. See the NOTICE file distributed with this work for +additional information regarding copyright ownership. The ASF licenses this +file to you under the Apache License, Version 2.0 (the "License"); you may not +use this file except in compliance with the License. You may obtain a copy of +the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +License for the specific language governing permissions and limitations under +the License. +``` \ No newline at end of file
diff --git a/classifier-end/helpers.py b/classifier-end/helpers.py new file mode 100644 index 0000000..bd59794 --- /dev/null +++ b/classifier-end/helpers.py
@@ -0,0 +1,69 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import re + +from edgetpuvision import svg + +CSS_STYLES = str(svg.CssStyle({'.back': svg.Style(fill='black', + stroke='black', + stroke_width='0.5em')})) + +def size_em(length): + return '%sem' % str(0.6 * length) + +def overlay(title, results, inference_time, layout): + x0, y0, width, height = layout.window + font_size = 0.03 * height + + defs = svg.Defs() + defs += CSS_STYLES + + doc = svg.Svg(width=width, height=height, + viewBox='%s %s %s %s' % layout.window, + font_size=font_size, font_family='monospace', font_weight=500) + doc += defs + + ox1, ox2 = x0 + 20, x0 + width - 20 + oy1, oy2 = y0 + 20 + font_size, y0 + height - 20 + + # Classes + lines = ['%s (%.2f)' % pair for pair in results] + for i, line in enumerate(lines): + y = oy2 - i * 1.7 * font_size + + doc += svg.Rect(x=0, y=0, width=size_em(len(line)), height='1em', + transform='translate(%s, %s) scale(-1,-1)' % (ox2, y), + _class='back') + + doc += svg.Text(line, text_anchor='end', x=ox2, y=y, fill='white') + + # Title + if title: + doc += svg.Rect(x=0, y=0, width=size_em(len(title)), height='1em', + transform='translate(%s, %s) scale(1,-1)' % (ox1, oy1), _class='back') + doc += svg.Text(title, x=ox1, y=oy1, fill='white') + + # Info + lines = [ + 'Inference time: %.2f ms (%.2f fps)' % (inference_time, 1000.0 / inference_time) + ] + + for i, line in enumerate(reversed(lines)): + y = oy2 - i * 1.7 * font_size + doc += svg.Rect(x=0, y=0, width=size_em(len(line)), height='1em', + transform='translate(%s, %s) scale(1,-1)' % (ox1, y), _class='back') + doc += svg.Text(line, x=ox1, y=y, fill='white') + + return str(doc)
diff --git a/classifier-end/main.py b/classifier-end/main.py new file mode 100644 index 0000000..73614fb --- /dev/null +++ b/classifier-end/main.py
@@ -0,0 +1,77 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import helpers + +from edgetpuvision import gstreamer, utils + +from edgetpu.classification.engine import ClassificationEngine + +def init_engine(model): + """Returns an Edge TPU classifier for the model""" + return ClassificationEngine(model) + +def input_size(engine): + """Returns the required input size for the model""" + _, h, w, _ = engine.get_input_tensor_shape() + return w, h + +def inference_time(engine): + """Returns the time taken to run inference""" + return engine.get_inference_time() + +def classify_image(tensor, engine, labels): + """Runs inference on the provided input tensor and + returns an overlay to display the inference results + """ + results = engine.ClassifyWithInputTensor( + tensor, threshold=0.1, top_k=3) + return [(labels[i], score) for i, score in results] + +def main(args): + input_source = "{0}:YUY2:{1}:{2}/1".format(args.source, args.resolution, args.frames) + labels = utils.load_labels(args.labels) + engine = init_engine(args.model) + inference_size = input_size(engine) + + def frame_callback(tensor, layout, command): + results = classify_image(tensor, engine, labels) + time = inference_time(engine) + if results and time: + return helpers.overlay('Edge TPU Image Classifier', results, time, layout) + + gstreamer.run(inference_size, frame_callback, + source=input_source, + loop=False, + display=gstreamer.Display.FULLSCREEN) + +if __name__ == '__main__': + parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter) + parser.add_argument('--source', + help='camera device (e.g. /dev/video0)', + default='/dev/video0') + parser.add_argument('--resolution', + help='camera capture resolution', + default='1280x720') + parser.add_argument('--frames', + help='camera capture frame rate', + default='30') + parser.add_argument('--model', required=True, + help='.tflite model path') + parser.add_argument('--labels', required=True, + help='label file path') + args = parser.parse_args() + + main(args)
diff --git a/classifier-end/models/imagenet_labels.txt b/classifier-end/models/imagenet_labels.txt new file mode 100644 index 0000000..a998708 --- /dev/null +++ b/classifier-end/models/imagenet_labels.txt
@@ -0,0 +1,1001 @@ + 0 background + 1 tench, Tinca tinca + 2 goldfish, Carassius auratus + 3 great white shark, white shark, man-eater, man-eating shark, Carcharodon carcharias + 4 tiger shark, Galeocerdo cuvieri + 5 hammerhead, hammerhead shark + 6 electric ray, crampfish, numbfish, torpedo + 7 stingray + 8 cock + 9 hen + 10 ostrich, Struthio camelus + 11 brambling, Fringilla montifringilla + 12 goldfinch, Carduelis carduelis + 13 house finch, linnet, Carpodacus mexicanus + 14 junco, snowbird + 15 indigo bunting, indigo finch, indigo bird, Passerina cyanea + 16 robin, American robin, Turdus migratorius + 17 bulbul + 18 jay + 19 magpie + 20 chickadee + 21 water ouzel, dipper + 22 kite + 23 bald eagle, American eagle, Haliaeetus leucocephalus + 24 vulture + 25 great grey owl, great gray owl, Strix nebulosa + 26 European fire salamander, Salamandra salamandra + 27 common newt, Triturus vulgaris + 28 eft + 29 spotted salamander, Ambystoma maculatum + 30 axolotl, mud puppy, Ambystoma mexicanum + 31 bullfrog, Rana catesbeiana + 32 tree frog, tree-frog + 33 tailed frog, bell toad, ribbed toad, tailed toad, Ascaphus trui + 34 loggerhead, loggerhead turtle, Caretta caretta + 35 leatherback turtle, leatherback, leathery turtle, Dermochelys coriacea + 36 mud turtle + 37 terrapin + 38 box turtle, box tortoise + 39 banded gecko + 40 common iguana, iguana, Iguana iguana + 41 American chameleon, anole, Anolis carolinensis + 42 whiptail, whiptail lizard + 43 agama + 44 frilled lizard, Chlamydosaurus kingi + 45 alligator lizard + 46 Gila monster, Heloderma suspectum + 47 green lizard, Lacerta viridis + 48 African chameleon, Chamaeleo chamaeleon + 49 Komodo dragon, Komodo lizard, dragon lizard, giant lizard, Varanus komodoensis + 50 African crocodile, Nile crocodile, Crocodylus niloticus + 51 American alligator, Alligator mississipiensis + 52 triceratops + 53 thunder snake, worm snake, Carphophis amoenus + 54 ringneck snake, ring-necked snake, ring snake + 55 hognose snake, puff adder, sand viper + 56 green snake, grass snake + 57 king snake, kingsnake + 58 garter snake, grass snake + 59 water snake + 60 vine snake + 61 night snake, Hypsiglena torquata + 62 boa constrictor, Constrictor constrictor + 63 rock python, rock snake, Python sebae + 64 Indian cobra, Naja naja + 65 green mamba + 66 sea snake + 67 horned viper, cerastes, sand viper, horned asp, Cerastes cornutus + 68 diamondback, diamondback rattlesnake, Crotalus adamanteus + 69 sidewinder, horned rattlesnake, Crotalus cerastes + 70 trilobite + 71 harvestman, daddy longlegs, Phalangium opilio + 72 scorpion + 73 black and gold garden spider, Argiope aurantia + 74 barn spider, Araneus cavaticus + 75 garden spider, Aranea diademata + 76 black widow, Latrodectus mactans + 77 tarantula + 78 wolf spider, hunting spider + 79 tick + 80 centipede + 81 black grouse + 82 ptarmigan + 83 ruffed grouse, partridge, Bonasa umbellus + 84 prairie chicken, prairie grouse, prairie fowl + 85 peacock + 86 quail + 87 partridge + 88 African grey, African gray, Psittacus erithacus + 89 macaw + 90 sulphur-crested cockatoo, Kakatoe galerita, Cacatua galerita + 91 lorikeet + 92 coucal + 93 bee eater + 94 hornbill + 95 hummingbird + 96 jacamar + 97 toucan + 98 drake + 99 red-breasted merganser, Mergus serrator + 100 goose + 101 black swan, Cygnus atratus + 102 tusker + 103 echidna, spiny anteater, anteater + 104 platypus, duckbill, duckbilled platypus, duck-billed platypus, Ornithorhynchus anatinus + 105 wallaby, brush kangaroo + 106 koala, koala bear, kangaroo bear, native bear, Phascolarctos cinereus + 107 wombat + 108 jellyfish + 109 sea anemone, anemone + 110 brain coral + 111 flatworm, platyhelminth + 112 nematode, nematode worm, roundworm + 113 conch + 114 snail + 115 slug + 116 sea slug, nudibranch + 117 chiton, coat-of-mail shell, sea cradle, polyplacophore + 118 chambered nautilus, pearly nautilus, nautilus + 119 Dungeness crab, Cancer magister + 120 rock crab, Cancer irroratus + 121 fiddler crab + 122 king crab, Alaska crab, Alaskan king crab, Alaska king crab, Paralithodes camtschatica + 123 American lobster, Northern lobster, Maine lobster, Homarus americanus + 124 spiny lobster, langouste, rock lobster, crawfish, crayfish, sea crawfish + 125 crayfish, crawfish, crawdad, crawdaddy + 126 hermit crab + 127 isopod + 128 white stork, Ciconia ciconia + 129 black stork, Ciconia nigra + 130 spoonbill + 131 flamingo + 132 little blue heron, Egretta caerulea + 133 American egret, great white heron, Egretta albus + 134 bittern + 135 crane + 136 limpkin, Aramus pictus + 137 European gallinule, Porphyrio porphyrio + 138 American coot, marsh hen, mud hen, water hen, Fulica americana + 139 bustard + 140 ruddy turnstone, Arenaria interpres + 141 red-backed sandpiper, dunlin, Erolia alpina + 142 redshank, Tringa totanus + 143 dowitcher + 144 oystercatcher, oyster catcher + 145 pelican + 146 king penguin, Aptenodytes patagonica + 147 albatross, mollymawk + 148 grey whale, gray whale, devilfish, Eschrichtius gibbosus, Eschrichtius robustus + 149 killer whale, killer, orca, grampus, sea wolf, Orcinus orca + 150 dugong, Dugong dugon + 151 sea lion + 152 Chihuahua + 153 Japanese spaniel + 154 Maltese dog, Maltese terrier, Maltese + 155 Pekinese, Pekingese, Peke + 156 Shih-Tzu + 157 Blenheim spaniel + 158 papillon + 159 toy terrier + 160 Rhodesian ridgeback + 161 Afghan hound, Afghan + 162 basset, basset hound + 163 beagle + 164 bloodhound, sleuthhound + 165 bluetick + 166 black-and-tan coonhound + 167 Walker hound, Walker foxhound + 168 English foxhound + 169 redbone + 170 borzoi, Russian wolfhound + 171 Irish wolfhound + 172 Italian greyhound + 173 whippet + 174 Ibizan hound, Ibizan Podenco + 175 Norwegian elkhound, elkhound + 176 otterhound, otter hound + 177 Saluki, gazelle hound + 178 Scottish deerhound, deerhound + 179 Weimaraner + 180 Staffordshire bullterrier, Staffordshire bull terrier + 181 American Staffordshire terrier, Staffordshire terrier, American pit bull terrier, pit bull terrier + 182 Bedlington terrier + 183 Border terrier + 184 Kerry blue terrier + 185 Irish terrier + 186 Norfolk terrier + 187 Norwich terrier + 188 Yorkshire terrier + 189 wire-haired fox terrier + 190 Lakeland terrier + 191 Sealyham terrier, Sealyham + 192 Airedale, Airedale terrier + 193 cairn, cairn terrier + 194 Australian terrier + 195 Dandie Dinmont, Dandie Dinmont terrier + 196 Boston bull, Boston terrier + 197 miniature schnauzer + 198 giant schnauzer + 199 standard schnauzer + 200 Scotch terrier, Scottish terrier, Scottie + 201 Tibetan terrier, chrysanthemum dog + 202 silky terrier, Sydney silky + 203 soft-coated wheaten terrier + 204 West Highland white terrier + 205 Lhasa, Lhasa apso + 206 flat-coated retriever + 207 curly-coated retriever + 208 golden retriever + 209 Labrador retriever + 210 Chesapeake Bay retriever + 211 German short-haired pointer + 212 vizsla, Hungarian pointer + 213 English setter + 214 Irish setter, red setter + 215 Gordon setter + 216 Brittany spaniel + 217 clumber, clumber spaniel + 218 English springer, English springer spaniel + 219 Welsh springer spaniel + 220 cocker spaniel, English cocker spaniel, cocker + 221 Sussex spaniel + 222 Irish water spaniel + 223 kuvasz + 224 schipperke + 225 groenendael + 226 malinois + 227 briard + 228 kelpie + 229 komondor + 230 Old English sheepdog, bobtail + 231 Shetland sheepdog, Shetland sheep dog, Shetland + 232 collie + 233 Border collie + 234 Bouvier des Flandres, Bouviers des Flandres + 235 Rottweiler + 236 German shepherd, German shepherd dog, German police dog, alsatian + 237 Doberman, Doberman pinscher + 238 miniature pinscher + 239 Greater Swiss Mountain dog + 240 Bernese mountain dog + 241 Appenzeller + 242 EntleBucher + 243 boxer + 244 bull mastiff + 245 Tibetan mastiff + 246 French bulldog + 247 Great Dane + 248 Saint Bernard, St Bernard + 249 Eskimo dog, husky + 250 malamute, malemute, Alaskan malamute + 251 Siberian husky + 252 dalmatian, coach dog, carriage dog + 253 affenpinscher, monkey pinscher, monkey dog + 254 basenji + 255 pug, pug-dog + 256 Leonberg + 257 Newfoundland, Newfoundland dog + 258 Great Pyrenees + 259 Samoyed, Samoyede + 260 Pomeranian + 261 chow, chow chow + 262 keeshond + 263 Brabancon griffon + 264 Pembroke, Pembroke Welsh corgi + 265 Cardigan, Cardigan Welsh corgi + 266 toy poodle + 267 miniature poodle + 268 standard poodle + 269 Mexican hairless + 270 timber wolf, grey wolf, gray wolf, Canis lupus + 271 white wolf, Arctic wolf, Canis lupus tundrarum + 272 red wolf, maned wolf, Canis rufus, Canis niger + 273 coyote, prairie wolf, brush wolf, Canis latrans + 274 dingo, warrigal, warragal, Canis dingo + 275 dhole, Cuon alpinus + 276 African hunting dog, hyena dog, Cape hunting dog, Lycaon pictus + 277 hyena, hyaena + 278 red fox, Vulpes vulpes + 279 kit fox, Vulpes macrotis + 280 Arctic fox, white fox, Alopex lagopus + 281 grey fox, gray fox, Urocyon cinereoargenteus + 282 tabby, tabby cat + 283 tiger cat + 284 Persian cat + 285 Siamese cat, Siamese + 286 Egyptian cat + 287 cougar, puma, catamount, mountain lion, painter, panther, Felis concolor + 288 lynx, catamount + 289 leopard, Panthera pardus + 290 snow leopard, ounce, Panthera uncia + 291 jaguar, panther, Panthera onca, Felis onca + 292 lion, king of beasts, Panthera leo + 293 tiger, Panthera tigris + 294 cheetah, chetah, Acinonyx jubatus + 295 brown bear, bruin, Ursus arctos + 296 American black bear, black bear, Ursus americanus, Euarctos americanus + 297 ice bear, polar bear, Ursus Maritimus, Thalarctos maritimus + 298 sloth bear, Melursus ursinus, Ursus ursinus + 299 mongoose + 300 meerkat, mierkat + 301 tiger beetle + 302 ladybug, ladybeetle, lady beetle, ladybird, ladybird beetle + 303 ground beetle, carabid beetle + 304 long-horned beetle, longicorn, longicorn beetle + 305 leaf beetle, chrysomelid + 306 dung beetle + 307 rhinoceros beetle + 308 weevil + 309 fly + 310 bee + 311 ant, emmet, pismire + 312 grasshopper, hopper + 313 cricket + 314 walking stick, walkingstick, stick insect + 315 cockroach, roach + 316 mantis, mantid + 317 cicada, cicala + 318 leafhopper + 319 lacewing, lacewing fly + 320 dragonfly, darning needle, devil's darning needle, sewing needle, snake feeder, snake doctor, mosquito hawk, skeeter hawk + 321 damselfly + 322 admiral + 323 ringlet, ringlet butterfly + 324 monarch, monarch butterfly, milkweed butterfly, Danaus plexippus + 325 cabbage butterfly + 326 sulphur butterfly, sulfur butterfly + 327 lycaenid, lycaenid butterfly + 328 starfish, sea star + 329 sea urchin + 330 sea cucumber, holothurian + 331 wood rabbit, cottontail, cottontail rabbit + 332 hare + 333 Angora, Angora rabbit + 334 hamster + 335 porcupine, hedgehog + 336 fox squirrel, eastern fox squirrel, Sciurus niger + 337 marmot + 338 beaver + 339 guinea pig, Cavia cobaya + 340 sorrel + 341 zebra + 342 hog, pig, grunter, squealer, Sus scrofa + 343 wild boar, boar, Sus scrofa + 344 warthog + 345 hippopotamus, hippo, river horse, Hippopotamus amphibius + 346 ox + 347 water buffalo, water ox, Asiatic buffalo, Bubalus bubalis + 348 bison + 349 ram, tup + 350 bighorn, bighorn sheep, cimarron, Rocky Mountain bighorn, Rocky Mountain sheep, Ovis canadensis + 351 ibex, Capra ibex + 352 hartebeest + 353 impala, Aepyceros melampus + 354 gazelle + 355 Arabian camel, dromedary, Camelus dromedarius + 356 llama + 357 weasel + 358 mink + 359 polecat, fitch, foulmart, foumart, Mustela putorius + 360 black-footed ferret, ferret, Mustela nigripes + 361 otter + 362 skunk, polecat, wood pussy + 363 badger + 364 armadillo + 365 three-toed sloth, ai, Bradypus tridactylus + 366 orangutan, orang, orangutang, Pongo pygmaeus + 367 gorilla, Gorilla gorilla + 368 chimpanzee, chimp, Pan troglodytes + 369 gibbon, Hylobates lar + 370 siamang, Hylobates syndactylus, Symphalangus syndactylus + 371 guenon, guenon monkey + 372 patas, hussar monkey, Erythrocebus patas + 373 baboon + 374 macaque + 375 langur + 376 colobus, colobus monkey + 377 proboscis monkey, Nasalis larvatus + 378 marmoset + 379 capuchin, ringtail, Cebus capucinus + 380 howler monkey, howler + 381 titi, titi monkey + 382 spider monkey, Ateles geoffroyi + 383 squirrel monkey, Saimiri sciureus + 384 Madagascar cat, ring-tailed lemur, Lemur catta + 385 indri, indris, Indri indri, Indri brevicaudatus + 386 Indian elephant, Elephas maximus + 387 African elephant, Loxodonta africana + 388 lesser panda, red panda, panda, bear cat, cat bear, Ailurus fulgens + 389 giant panda, panda, panda bear, coon bear, Ailuropoda melanoleuca + 390 barracouta, snoek + 391 eel + 392 coho, cohoe, coho salmon, blue jack, silver salmon, Oncorhynchus kisutch + 393 rock beauty, Holocanthus tricolor + 394 anemone fish + 395 sturgeon + 396 gar, garfish, garpike, billfish, Lepisosteus osseus + 397 lionfish + 398 puffer, pufferfish, blowfish, globefish + 399 abacus + 400 abaya + 401 academic gown, academic robe, judge's robe + 402 accordion, piano accordion, squeeze box + 403 acoustic guitar + 404 aircraft carrier, carrier, flattop, attack aircraft carrier + 405 airliner + 406 airship, dirigible + 407 altar + 408 ambulance + 409 amphibian, amphibious vehicle + 410 analog clock + 411 apiary, bee house + 412 apron + 413 ashcan, trash can, garbage can, wastebin, ash bin, ash-bin, ashbin, dustbin, trash barrel, trash bin + 414 assault rifle, assault gun + 415 backpack, back pack, knapsack, packsack, rucksack, haversack + 416 bakery, bakeshop, bakehouse + 417 balance beam, beam + 418 balloon + 419 ballpoint, ballpoint pen, ballpen, Biro + 420 Band Aid + 421 banjo + 422 bannister, banister, balustrade, balusters, handrail + 423 barbell + 424 barber chair + 425 barbershop + 426 barn + 427 barometer + 428 barrel, cask + 429 barrow, garden cart, lawn cart, wheelbarrow + 430 baseball + 431 basketball + 432 bassinet + 433 bassoon + 434 bathing cap, swimming cap + 435 bath towel + 436 bathtub, bathing tub, bath, tub + 437 beach wagon, station wagon, wagon, estate car, beach waggon, station waggon, waggon + 438 beacon, lighthouse, beacon light, pharos + 439 beaker + 440 bearskin, busby, shako + 441 beer bottle + 442 beer glass + 443 bell cote, bell cot + 444 bib + 445 bicycle-built-for-two, tandem bicycle, tandem + 446 bikini, two-piece + 447 binder, ring-binder + 448 binoculars, field glasses, opera glasses + 449 birdhouse + 450 boathouse + 451 bobsled, bobsleigh, bob + 452 bolo tie, bolo, bola tie, bola + 453 bonnet, poke bonnet + 454 bookcase + 455 bookshop, bookstore, bookstall + 456 bottlecap + 457 bow + 458 bow tie, bow-tie, bowtie + 459 brass, memorial tablet, plaque + 460 brassiere, bra, bandeau + 461 breakwater, groin, groyne, mole, bulwark, seawall, jetty + 462 breastplate, aegis, egis + 463 broom + 464 bucket, pail + 465 buckle + 466 bulletproof vest + 467 bullet train, bullet + 468 butcher shop, meat market + 469 cab, hack, taxi, taxicab + 470 caldron, cauldron + 471 candle, taper, wax light + 472 cannon + 473 canoe + 474 can opener, tin opener + 475 cardigan + 476 car mirror + 477 carousel, carrousel, merry-go-round, roundabout, whirligig + 478 carpenter's kit, tool kit + 479 carton + 480 car wheel + 481 cash machine, cash dispenser, automated teller machine, automatic teller machine, automated teller, automatic teller, ATM + 482 cassette + 483 cassette player + 484 castle + 485 catamaran + 486 CD player + 487 cello, violoncello + 488 cellular telephone, cellular phone, cellphone, cell, mobile phone + 489 chain + 490 chainlink fence + 491 chain mail, ring mail, mail, chain armor, chain armour, ring armor, ring armour + 492 chain saw, chainsaw + 493 chest + 494 chiffonier, commode + 495 chime, bell, gong + 496 china cabinet, china closet + 497 Christmas stocking + 498 church, church building + 499 cinema, movie theater, movie theatre, movie house, picture palace + 500 cleaver, meat cleaver, chopper + 501 cliff dwelling + 502 cloak + 503 clog, geta, patten, sabot + 504 cocktail shaker + 505 coffee mug + 506 coffeepot + 507 coil, spiral, volute, whorl, helix + 508 combination lock + 509 computer keyboard, keypad + 510 confectionery, confectionary, candy store + 511 container ship, containership, container vessel + 512 convertible + 513 corkscrew, bottle screw + 514 cornet, horn, trumpet, trump + 515 cowboy boot + 516 cowboy hat, ten-gallon hat + 517 cradle + 518 crane + 519 crash helmet + 520 crate + 521 crib, cot + 522 Crock Pot + 523 croquet ball + 524 crutch + 525 cuirass + 526 dam, dike, dyke + 527 desk + 528 desktop computer + 529 dial telephone, dial phone + 530 diaper, nappy, napkin + 531 digital clock + 532 digital watch + 533 dining table, board + 534 dishrag, dishcloth + 535 dishwasher, dish washer, dishwashing machine + 536 disk brake, disc brake + 537 dock, dockage, docking facility + 538 dogsled, dog sled, dog sleigh + 539 dome + 540 doormat, welcome mat + 541 drilling platform, offshore rig + 542 drum, membranophone, tympan + 543 drumstick + 544 dumbbell + 545 Dutch oven + 546 electric fan, blower + 547 electric guitar + 548 electric locomotive + 549 entertainment center + 550 envelope + 551 espresso maker + 552 face powder + 553 feather boa, boa + 554 file, file cabinet, filing cabinet + 555 fireboat + 556 fire engine, fire truck + 557 fire screen, fireguard + 558 flagpole, flagstaff + 559 flute, transverse flute + 560 folding chair + 561 football helmet + 562 forklift + 563 fountain + 564 fountain pen + 565 four-poster + 566 freight car + 567 French horn, horn + 568 frying pan, frypan, skillet + 569 fur coat + 570 garbage truck, dustcart + 571 gasmask, respirator, gas helmet + 572 gas pump, gasoline pump, petrol pump, island dispenser + 573 goblet + 574 go-kart + 575 golf ball + 576 golfcart, golf cart + 577 gondola + 578 gong, tam-tam + 579 gown + 580 grand piano, grand + 581 greenhouse, nursery, glasshouse + 582 grille, radiator grille + 583 grocery store, grocery, food market, market + 584 guillotine + 585 hair slide + 586 hair spray + 587 half track + 588 hammer + 589 hamper + 590 hand blower, blow dryer, blow drier, hair dryer, hair drier + 591 hand-held computer, hand-held microcomputer + 592 handkerchief, hankie, hanky, hankey + 593 hard disc, hard disk, fixed disk + 594 harmonica, mouth organ, harp, mouth harp + 595 harp + 596 harvester, reaper + 597 hatchet + 598 holster + 599 home theater, home theatre + 600 honeycomb + 601 hook, claw + 602 hoopskirt, crinoline + 603 horizontal bar, high bar + 604 horse cart, horse-cart + 605 hourglass + 606 iPod + 607 iron, smoothing iron + 608 jack-o'-lantern + 609 jean, blue jean, denim + 610 jeep, landrover + 611 jersey, T-shirt, tee shirt + 612 jigsaw puzzle + 613 jinrikisha, ricksha, rickshaw + 614 joystick + 615 kimono + 616 knee pad + 617 knot + 618 lab coat, laboratory coat + 619 ladle + 620 lampshade, lamp shade + 621 laptop, laptop computer + 622 lawn mower, mower + 623 lens cap, lens cover + 624 letter opener, paper knife, paperknife + 625 library + 626 lifeboat + 627 lighter, light, igniter, ignitor + 628 limousine, limo + 629 liner, ocean liner + 630 lipstick, lip rouge + 631 Loafer + 632 lotion + 633 loudspeaker, speaker, speaker unit, loudspeaker system, speaker system + 634 loupe, jeweler's loupe + 635 lumbermill, sawmill + 636 magnetic compass + 637 mailbag, postbag + 638 mailbox, letter box + 639 maillot + 640 maillot, tank suit + 641 manhole cover + 642 maraca + 643 marimba, xylophone + 644 mask + 645 matchstick + 646 maypole + 647 maze, labyrinth + 648 measuring cup + 649 medicine chest, medicine cabinet + 650 megalith, megalithic structure + 651 microphone, mike + 652 microwave, microwave oven + 653 military uniform + 654 milk can + 655 minibus + 656 miniskirt, mini + 657 minivan + 658 missile + 659 mitten + 660 mixing bowl + 661 mobile home, manufactured home + 662 Model T + 663 modem + 664 monastery + 665 monitor + 666 moped + 667 mortar + 668 mortarboard + 669 mosque + 670 mosquito net + 671 motor scooter, scooter + 672 mountain bike, all-terrain bike, off-roader + 673 mountain tent + 674 mouse, computer mouse + 675 mousetrap + 676 moving van + 677 muzzle + 678 nail + 679 neck brace + 680 necklace + 681 nipple + 682 notebook, notebook computer + 683 obelisk + 684 oboe, hautboy, hautbois + 685 ocarina, sweet potato + 686 odometer, hodometer, mileometer, milometer + 687 oil filter + 688 organ, pipe organ + 689 oscilloscope, scope, cathode-ray oscilloscope, CRO + 690 overskirt + 691 oxcart + 692 oxygen mask + 693 packet + 694 paddle, boat paddle + 695 paddlewheel, paddle wheel + 696 padlock + 697 paintbrush + 698 pajama, pyjama, pj's, jammies + 699 palace + 700 panpipe, pandean pipe, syrinx + 701 paper towel + 702 parachute, chute + 703 parallel bars, bars + 704 park bench + 705 parking meter + 706 passenger car, coach, carriage + 707 patio, terrace + 708 pay-phone, pay-station + 709 pedestal, plinth, footstall + 710 pencil box, pencil case + 711 pencil sharpener + 712 perfume, essence + 713 Petri dish + 714 photocopier + 715 pick, plectrum, plectron + 716 pickelhaube + 717 picket fence, paling + 718 pickup, pickup truck + 719 pier + 720 piggy bank, penny bank + 721 pill bottle + 722 pillow + 723 ping-pong ball + 724 pinwheel + 725 pirate, pirate ship + 726 pitcher, ewer + 727 plane, carpenter's plane, woodworking plane + 728 planetarium + 729 plastic bag + 730 plate rack + 731 plow, plough + 732 plunger, plumber's helper + 733 Polaroid camera, Polaroid Land camera + 734 pole + 735 police van, police wagon, paddy wagon, patrol wagon, wagon, black Maria + 736 poncho + 737 pool table, billiard table, snooker table + 738 pop bottle, soda bottle + 739 pot, flowerpot + 740 potter's wheel + 741 power drill + 742 prayer rug, prayer mat + 743 printer + 744 prison, prison house + 745 projectile, missile + 746 projector + 747 puck, hockey puck + 748 punching bag, punch bag, punching ball, punchball + 749 purse + 750 quill, quill pen + 751 quilt, comforter, comfort, puff + 752 racer, race car, racing car + 753 racket, racquet + 754 radiator + 755 radio, wireless + 756 radio telescope, radio reflector + 757 rain barrel + 758 recreational vehicle, RV, R.V. + 759 reel + 760 reflex camera + 761 refrigerator, icebox + 762 remote control, remote + 763 restaurant, eating house, eating place, eatery + 764 revolver, six-gun, six-shooter + 765 rifle + 766 rocking chair, rocker + 767 rotisserie + 768 rubber eraser, rubber, pencil eraser + 769 rugby ball + 770 rule, ruler + 771 running shoe + 772 safe + 773 safety pin + 774 saltshaker, salt shaker + 775 sandal + 776 sarong + 777 sax, saxophone + 778 scabbard + 779 scale, weighing machine + 780 school bus + 781 schooner + 782 scoreboard + 783 screen, CRT screen + 784 screw + 785 screwdriver + 786 seat belt, seatbelt + 787 sewing machine + 788 shield, buckler + 789 shoe shop, shoe-shop, shoe store + 790 shoji + 791 shopping basket + 792 shopping cart + 793 shovel + 794 shower cap + 795 shower curtain + 796 ski + 797 ski mask + 798 sleeping bag + 799 slide rule, slipstick + 800 sliding door + 801 slot, one-armed bandit + 802 snorkel + 803 snowmobile + 804 snowplow, snowplough + 805 soap dispenser + 806 soccer ball + 807 sock + 808 solar dish, solar collector, solar furnace + 809 sombrero + 810 soup bowl + 811 space bar + 812 space heater + 813 space shuttle + 814 spatula + 815 speedboat + 816 spider web, spider's web + 817 spindle + 818 sports car, sport car + 819 spotlight, spot + 820 stage + 821 steam locomotive + 822 steel arch bridge + 823 steel drum + 824 stethoscope + 825 stole + 826 stone wall + 827 stopwatch, stop watch + 828 stove + 829 strainer + 830 streetcar, tram, tramcar, trolley, trolley car + 831 stretcher + 832 studio couch, day bed + 833 stupa, tope + 834 submarine, pigboat, sub, U-boat + 835 suit, suit of clothes + 836 sundial + 837 sunglass + 838 sunglasses, dark glasses, shades + 839 sunscreen, sunblock, sun blocker + 840 suspension bridge + 841 swab, swob, mop + 842 sweatshirt + 843 swimming trunks, bathing trunks + 844 swing + 845 switch, electric switch, electrical switch + 846 syringe + 847 table lamp + 848 tank, army tank, armored combat vehicle, armoured combat vehicle + 849 tape player + 850 teapot + 851 teddy, teddy bear + 852 television, television system + 853 tennis ball + 854 thatch, thatched roof + 855 theater curtain, theatre curtain + 856 thimble + 857 thresher, thrasher, threshing machine + 858 throne + 859 tile roof + 860 toaster + 861 tobacco shop, tobacconist shop, tobacconist + 862 toilet seat + 863 torch + 864 totem pole + 865 tow truck, tow car, wrecker + 866 toyshop + 867 tractor + 868 trailer truck, tractor trailer, trucking rig, rig, articulated lorry, semi + 869 tray + 870 trench coat + 871 tricycle, trike, velocipede + 872 trimaran + 873 tripod + 874 triumphal arch + 875 trolleybus, trolley coach, trackless trolley + 876 trombone + 877 tub, vat + 878 turnstile + 879 typewriter keyboard + 880 umbrella + 881 unicycle, monocycle + 882 upright, upright piano + 883 vacuum, vacuum cleaner + 884 vase + 885 vault + 886 velvet + 887 vending machine + 888 vestment + 889 viaduct + 890 violin, fiddle + 891 volleyball + 892 waffle iron + 893 wall clock + 894 wallet, billfold, notecase, pocketbook + 895 wardrobe, closet, press + 896 warplane, military plane + 897 washbasin, handbasin, washbowl, lavabo, wash-hand basin + 898 washer, automatic washer, washing machine + 899 water bottle + 900 water jug + 901 water tower + 902 whiskey jug + 903 whistle + 904 wig + 905 window screen + 906 window shade + 907 Windsor tie + 908 wine bottle + 909 wing + 910 wok + 911 wooden spoon + 912 wool, woolen, woollen + 913 worm fence, snake fence, snake-rail fence, Virginia fence + 914 wreck + 915 yawl + 916 yurt + 917 web site, website, internet site, site + 918 comic book + 919 crossword puzzle, crossword + 920 street sign + 921 traffic light, traffic signal, stoplight + 922 book jacket, dust cover, dust jacket, dust wrapper + 923 menu + 924 plate + 925 guacamole + 926 consomme + 927 hot pot, hotpot + 928 trifle + 929 ice cream, icecream + 930 ice lolly, lolly, lollipop, popsicle + 931 French loaf + 932 bagel, beigel + 933 pretzel + 934 cheeseburger + 935 hotdog, hot dog, red hot + 936 mashed potato + 937 head cabbage + 938 broccoli + 939 cauliflower + 940 zucchini, courgette + 941 spaghetti squash + 942 acorn squash + 943 butternut squash + 944 cucumber, cuke + 945 artichoke, globe artichoke + 946 bell pepper + 947 cardoon + 948 mushroom + 949 Granny Smith + 950 strawberry + 951 orange + 952 lemon + 953 fig + 954 pineapple, ananas + 955 banana + 956 jackfruit, jak, jack + 957 custard apple + 958 pomegranate + 959 hay + 960 carbonara + 961 chocolate sauce, chocolate syrup + 962 dough + 963 meat loaf, meatloaf + 964 pizza, pizza pie + 965 potpie + 966 burrito + 967 red wine + 968 espresso + 969 cup + 970 eggnog + 971 alp + 972 bubble + 973 cliff, drop, drop-off + 974 coral reef + 975 geyser + 976 lakeside, lakeshore + 977 promontory, headland, head, foreland + 978 sandbar, sand bar + 979 seashore, coast, seacoast, sea-coast + 980 valley, vale + 981 volcano + 982 ballplayer, baseball player + 983 groom, bridegroom + 984 scuba diver + 985 rapeseed + 986 daisy + 987 yellow lady's slipper, yellow lady-slipper, Cypripedium calceolus, Cypripedium parviflorum + 988 corn + 989 acorn + 990 hip, rose hip, rosehip + 991 buckeye, horse chestnut, conker + 992 coral fungus + 993 agaric + 994 gyromitra + 995 stinkhorn, carrion fungus + 996 earthstar + 997 hen-of-the-woods, hen of the woods, Polyporus frondosus, Grifola frondosa + 998 bolete + 999 ear, spike, capitulum +1000 toilet tissue, toilet paper, bathroom tissue \ No newline at end of file
diff --git a/classifier-end/models/inception_v2_224_quant.tflite b/classifier-end/models/inception_v2_224_quant.tflite new file mode 100644 index 0000000..f6eed74 --- /dev/null +++ b/classifier-end/models/inception_v2_224_quant.tflite Binary files differ
diff --git a/classifier-end/models/inception_v2_224_quant_edgetpu.tflite b/classifier-end/models/inception_v2_224_quant_edgetpu.tflite new file mode 100644 index 0000000..827453b --- /dev/null +++ b/classifier-end/models/inception_v2_224_quant_edgetpu.tflite Binary files differ
diff --git a/classifier-start/helpers.py b/classifier-start/helpers.py new file mode 100644 index 0000000..bd59794 --- /dev/null +++ b/classifier-start/helpers.py
@@ -0,0 +1,69 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import re + +from edgetpuvision import svg + +CSS_STYLES = str(svg.CssStyle({'.back': svg.Style(fill='black', + stroke='black', + stroke_width='0.5em')})) + +def size_em(length): + return '%sem' % str(0.6 * length) + +def overlay(title, results, inference_time, layout): + x0, y0, width, height = layout.window + font_size = 0.03 * height + + defs = svg.Defs() + defs += CSS_STYLES + + doc = svg.Svg(width=width, height=height, + viewBox='%s %s %s %s' % layout.window, + font_size=font_size, font_family='monospace', font_weight=500) + doc += defs + + ox1, ox2 = x0 + 20, x0 + width - 20 + oy1, oy2 = y0 + 20 + font_size, y0 + height - 20 + + # Classes + lines = ['%s (%.2f)' % pair for pair in results] + for i, line in enumerate(lines): + y = oy2 - i * 1.7 * font_size + + doc += svg.Rect(x=0, y=0, width=size_em(len(line)), height='1em', + transform='translate(%s, %s) scale(-1,-1)' % (ox2, y), + _class='back') + + doc += svg.Text(line, text_anchor='end', x=ox2, y=y, fill='white') + + # Title + if title: + doc += svg.Rect(x=0, y=0, width=size_em(len(title)), height='1em', + transform='translate(%s, %s) scale(1,-1)' % (ox1, oy1), _class='back') + doc += svg.Text(title, x=ox1, y=oy1, fill='white') + + # Info + lines = [ + 'Inference time: %.2f ms (%.2f fps)' % (inference_time, 1000.0 / inference_time) + ] + + for i, line in enumerate(reversed(lines)): + y = oy2 - i * 1.7 * font_size + doc += svg.Rect(x=0, y=0, width=size_em(len(line)), height='1em', + transform='translate(%s, %s) scale(1,-1)' % (ox1, y), _class='back') + doc += svg.Text(line, x=ox1, y=y, fill='white') + + return str(doc)
diff --git a/classifier-start/main.py b/classifier-start/main.py new file mode 100644 index 0000000..5c70f91 --- /dev/null +++ b/classifier-start/main.py
@@ -0,0 +1,73 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import helpers + +from edgetpuvision import gstreamer, utils + +def init_engine(model): + """Returns an Edge TPU classifier for the model""" + # TODO: Instantiate a ClassificationEngine for the given model + +def input_size(engine): + """Returns the required input size for the model""" + # TODO: Return the proper input size for the given model + return 16, 9 + +def inference_time(engine): + """Returns the time taken to run inference""" + # TODO: Return the inference time from the ClassificationEngine + +def classify_image(tensor, engine, labels): + """Runs inference on the provided input tensor and + returns an overlay to display the inference results + """ + # TODO: Run inference on the provided input tensor + +def main(args): + input_source = "{0}:YUY2:{1}:{2}/1".format(args.source, args.resolution, args.frames) + labels = utils.load_labels(args.labels) + engine = init_engine(args.model) + inference_size = input_size(engine) + + def frame_callback(tensor, layout, command): + results = classify_image(tensor, engine, labels) + time = inference_time(engine) + if results and time: + return helpers.overlay('Edge TPU Image Classifier', results, time, layout) + + gstreamer.run(inference_size, frame_callback, + source=input_source, + loop=False, + display=gstreamer.Display.FULLSCREEN) + +if __name__ == '__main__': + parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter) + parser.add_argument('--source', + help='camera device (e.g. /dev/video0)', + default='/dev/video0') + parser.add_argument('--resolution', + help='camera capture resolution', + default='1280x720') + parser.add_argument('--frames', + help='camera capture frame rate', + default='30') + parser.add_argument('--model', required=True, + help='.tflite model path') + parser.add_argument('--labels', required=True, + help='label file path') + args = parser.parse_args() + + main(args)
diff --git a/classifier-start/models/imagenet_labels.txt b/classifier-start/models/imagenet_labels.txt new file mode 100644 index 0000000..a998708 --- /dev/null +++ b/classifier-start/models/imagenet_labels.txt
@@ -0,0 +1,1001 @@ + 0 background + 1 tench, Tinca tinca + 2 goldfish, Carassius auratus + 3 great white shark, white shark, man-eater, man-eating shark, Carcharodon carcharias + 4 tiger shark, Galeocerdo cuvieri + 5 hammerhead, hammerhead shark + 6 electric ray, crampfish, numbfish, torpedo + 7 stingray + 8 cock + 9 hen + 10 ostrich, Struthio camelus + 11 brambling, Fringilla montifringilla + 12 goldfinch, Carduelis carduelis + 13 house finch, linnet, Carpodacus mexicanus + 14 junco, snowbird + 15 indigo bunting, indigo finch, indigo bird, Passerina cyanea + 16 robin, American robin, Turdus migratorius + 17 bulbul + 18 jay + 19 magpie + 20 chickadee + 21 water ouzel, dipper + 22 kite + 23 bald eagle, American eagle, Haliaeetus leucocephalus + 24 vulture + 25 great grey owl, great gray owl, Strix nebulosa + 26 European fire salamander, Salamandra salamandra + 27 common newt, Triturus vulgaris + 28 eft + 29 spotted salamander, Ambystoma maculatum + 30 axolotl, mud puppy, Ambystoma mexicanum + 31 bullfrog, Rana catesbeiana + 32 tree frog, tree-frog + 33 tailed frog, bell toad, ribbed toad, tailed toad, Ascaphus trui + 34 loggerhead, loggerhead turtle, Caretta caretta + 35 leatherback turtle, leatherback, leathery turtle, Dermochelys coriacea + 36 mud turtle + 37 terrapin + 38 box turtle, box tortoise + 39 banded gecko + 40 common iguana, iguana, Iguana iguana + 41 American chameleon, anole, Anolis carolinensis + 42 whiptail, whiptail lizard + 43 agama + 44 frilled lizard, Chlamydosaurus kingi + 45 alligator lizard + 46 Gila monster, Heloderma suspectum + 47 green lizard, Lacerta viridis + 48 African chameleon, Chamaeleo chamaeleon + 49 Komodo dragon, Komodo lizard, dragon lizard, giant lizard, Varanus komodoensis + 50 African crocodile, Nile crocodile, Crocodylus niloticus + 51 American alligator, Alligator mississipiensis + 52 triceratops + 53 thunder snake, worm snake, Carphophis amoenus + 54 ringneck snake, ring-necked snake, ring snake + 55 hognose snake, puff adder, sand viper + 56 green snake, grass snake + 57 king snake, kingsnake + 58 garter snake, grass snake + 59 water snake + 60 vine snake + 61 night snake, Hypsiglena torquata + 62 boa constrictor, Constrictor constrictor + 63 rock python, rock snake, Python sebae + 64 Indian cobra, Naja naja + 65 green mamba + 66 sea snake + 67 horned viper, cerastes, sand viper, horned asp, Cerastes cornutus + 68 diamondback, diamondback rattlesnake, Crotalus adamanteus + 69 sidewinder, horned rattlesnake, Crotalus cerastes + 70 trilobite + 71 harvestman, daddy longlegs, Phalangium opilio + 72 scorpion + 73 black and gold garden spider, Argiope aurantia + 74 barn spider, Araneus cavaticus + 75 garden spider, Aranea diademata + 76 black widow, Latrodectus mactans + 77 tarantula + 78 wolf spider, hunting spider + 79 tick + 80 centipede + 81 black grouse + 82 ptarmigan + 83 ruffed grouse, partridge, Bonasa umbellus + 84 prairie chicken, prairie grouse, prairie fowl + 85 peacock + 86 quail + 87 partridge + 88 African grey, African gray, Psittacus erithacus + 89 macaw + 90 sulphur-crested cockatoo, Kakatoe galerita, Cacatua galerita + 91 lorikeet + 92 coucal + 93 bee eater + 94 hornbill + 95 hummingbird + 96 jacamar + 97 toucan + 98 drake + 99 red-breasted merganser, Mergus serrator + 100 goose + 101 black swan, Cygnus atratus + 102 tusker + 103 echidna, spiny anteater, anteater + 104 platypus, duckbill, duckbilled platypus, duck-billed platypus, Ornithorhynchus anatinus + 105 wallaby, brush kangaroo + 106 koala, koala bear, kangaroo bear, native bear, Phascolarctos cinereus + 107 wombat + 108 jellyfish + 109 sea anemone, anemone + 110 brain coral + 111 flatworm, platyhelminth + 112 nematode, nematode worm, roundworm + 113 conch + 114 snail + 115 slug + 116 sea slug, nudibranch + 117 chiton, coat-of-mail shell, sea cradle, polyplacophore + 118 chambered nautilus, pearly nautilus, nautilus + 119 Dungeness crab, Cancer magister + 120 rock crab, Cancer irroratus + 121 fiddler crab + 122 king crab, Alaska crab, Alaskan king crab, Alaska king crab, Paralithodes camtschatica + 123 American lobster, Northern lobster, Maine lobster, Homarus americanus + 124 spiny lobster, langouste, rock lobster, crawfish, crayfish, sea crawfish + 125 crayfish, crawfish, crawdad, crawdaddy + 126 hermit crab + 127 isopod + 128 white stork, Ciconia ciconia + 129 black stork, Ciconia nigra + 130 spoonbill + 131 flamingo + 132 little blue heron, Egretta caerulea + 133 American egret, great white heron, Egretta albus + 134 bittern + 135 crane + 136 limpkin, Aramus pictus + 137 European gallinule, Porphyrio porphyrio + 138 American coot, marsh hen, mud hen, water hen, Fulica americana + 139 bustard + 140 ruddy turnstone, Arenaria interpres + 141 red-backed sandpiper, dunlin, Erolia alpina + 142 redshank, Tringa totanus + 143 dowitcher + 144 oystercatcher, oyster catcher + 145 pelican + 146 king penguin, Aptenodytes patagonica + 147 albatross, mollymawk + 148 grey whale, gray whale, devilfish, Eschrichtius gibbosus, Eschrichtius robustus + 149 killer whale, killer, orca, grampus, sea wolf, Orcinus orca + 150 dugong, Dugong dugon + 151 sea lion + 152 Chihuahua + 153 Japanese spaniel + 154 Maltese dog, Maltese terrier, Maltese + 155 Pekinese, Pekingese, Peke + 156 Shih-Tzu + 157 Blenheim spaniel + 158 papillon + 159 toy terrier + 160 Rhodesian ridgeback + 161 Afghan hound, Afghan + 162 basset, basset hound + 163 beagle + 164 bloodhound, sleuthhound + 165 bluetick + 166 black-and-tan coonhound + 167 Walker hound, Walker foxhound + 168 English foxhound + 169 redbone + 170 borzoi, Russian wolfhound + 171 Irish wolfhound + 172 Italian greyhound + 173 whippet + 174 Ibizan hound, Ibizan Podenco + 175 Norwegian elkhound, elkhound + 176 otterhound, otter hound + 177 Saluki, gazelle hound + 178 Scottish deerhound, deerhound + 179 Weimaraner + 180 Staffordshire bullterrier, Staffordshire bull terrier + 181 American Staffordshire terrier, Staffordshire terrier, American pit bull terrier, pit bull terrier + 182 Bedlington terrier + 183 Border terrier + 184 Kerry blue terrier + 185 Irish terrier + 186 Norfolk terrier + 187 Norwich terrier + 188 Yorkshire terrier + 189 wire-haired fox terrier + 190 Lakeland terrier + 191 Sealyham terrier, Sealyham + 192 Airedale, Airedale terrier + 193 cairn, cairn terrier + 194 Australian terrier + 195 Dandie Dinmont, Dandie Dinmont terrier + 196 Boston bull, Boston terrier + 197 miniature schnauzer + 198 giant schnauzer + 199 standard schnauzer + 200 Scotch terrier, Scottish terrier, Scottie + 201 Tibetan terrier, chrysanthemum dog + 202 silky terrier, Sydney silky + 203 soft-coated wheaten terrier + 204 West Highland white terrier + 205 Lhasa, Lhasa apso + 206 flat-coated retriever + 207 curly-coated retriever + 208 golden retriever + 209 Labrador retriever + 210 Chesapeake Bay retriever + 211 German short-haired pointer + 212 vizsla, Hungarian pointer + 213 English setter + 214 Irish setter, red setter + 215 Gordon setter + 216 Brittany spaniel + 217 clumber, clumber spaniel + 218 English springer, English springer spaniel + 219 Welsh springer spaniel + 220 cocker spaniel, English cocker spaniel, cocker + 221 Sussex spaniel + 222 Irish water spaniel + 223 kuvasz + 224 schipperke + 225 groenendael + 226 malinois + 227 briard + 228 kelpie + 229 komondor + 230 Old English sheepdog, bobtail + 231 Shetland sheepdog, Shetland sheep dog, Shetland + 232 collie + 233 Border collie + 234 Bouvier des Flandres, Bouviers des Flandres + 235 Rottweiler + 236 German shepherd, German shepherd dog, German police dog, alsatian + 237 Doberman, Doberman pinscher + 238 miniature pinscher + 239 Greater Swiss Mountain dog + 240 Bernese mountain dog + 241 Appenzeller + 242 EntleBucher + 243 boxer + 244 bull mastiff + 245 Tibetan mastiff + 246 French bulldog + 247 Great Dane + 248 Saint Bernard, St Bernard + 249 Eskimo dog, husky + 250 malamute, malemute, Alaskan malamute + 251 Siberian husky + 252 dalmatian, coach dog, carriage dog + 253 affenpinscher, monkey pinscher, monkey dog + 254 basenji + 255 pug, pug-dog + 256 Leonberg + 257 Newfoundland, Newfoundland dog + 258 Great Pyrenees + 259 Samoyed, Samoyede + 260 Pomeranian + 261 chow, chow chow + 262 keeshond + 263 Brabancon griffon + 264 Pembroke, Pembroke Welsh corgi + 265 Cardigan, Cardigan Welsh corgi + 266 toy poodle + 267 miniature poodle + 268 standard poodle + 269 Mexican hairless + 270 timber wolf, grey wolf, gray wolf, Canis lupus + 271 white wolf, Arctic wolf, Canis lupus tundrarum + 272 red wolf, maned wolf, Canis rufus, Canis niger + 273 coyote, prairie wolf, brush wolf, Canis latrans + 274 dingo, warrigal, warragal, Canis dingo + 275 dhole, Cuon alpinus + 276 African hunting dog, hyena dog, Cape hunting dog, Lycaon pictus + 277 hyena, hyaena + 278 red fox, Vulpes vulpes + 279 kit fox, Vulpes macrotis + 280 Arctic fox, white fox, Alopex lagopus + 281 grey fox, gray fox, Urocyon cinereoargenteus + 282 tabby, tabby cat + 283 tiger cat + 284 Persian cat + 285 Siamese cat, Siamese + 286 Egyptian cat + 287 cougar, puma, catamount, mountain lion, painter, panther, Felis concolor + 288 lynx, catamount + 289 leopard, Panthera pardus + 290 snow leopard, ounce, Panthera uncia + 291 jaguar, panther, Panthera onca, Felis onca + 292 lion, king of beasts, Panthera leo + 293 tiger, Panthera tigris + 294 cheetah, chetah, Acinonyx jubatus + 295 brown bear, bruin, Ursus arctos + 296 American black bear, black bear, Ursus americanus, Euarctos americanus + 297 ice bear, polar bear, Ursus Maritimus, Thalarctos maritimus + 298 sloth bear, Melursus ursinus, Ursus ursinus + 299 mongoose + 300 meerkat, mierkat + 301 tiger beetle + 302 ladybug, ladybeetle, lady beetle, ladybird, ladybird beetle + 303 ground beetle, carabid beetle + 304 long-horned beetle, longicorn, longicorn beetle + 305 leaf beetle, chrysomelid + 306 dung beetle + 307 rhinoceros beetle + 308 weevil + 309 fly + 310 bee + 311 ant, emmet, pismire + 312 grasshopper, hopper + 313 cricket + 314 walking stick, walkingstick, stick insect + 315 cockroach, roach + 316 mantis, mantid + 317 cicada, cicala + 318 leafhopper + 319 lacewing, lacewing fly + 320 dragonfly, darning needle, devil's darning needle, sewing needle, snake feeder, snake doctor, mosquito hawk, skeeter hawk + 321 damselfly + 322 admiral + 323 ringlet, ringlet butterfly + 324 monarch, monarch butterfly, milkweed butterfly, Danaus plexippus + 325 cabbage butterfly + 326 sulphur butterfly, sulfur butterfly + 327 lycaenid, lycaenid butterfly + 328 starfish, sea star + 329 sea urchin + 330 sea cucumber, holothurian + 331 wood rabbit, cottontail, cottontail rabbit + 332 hare + 333 Angora, Angora rabbit + 334 hamster + 335 porcupine, hedgehog + 336 fox squirrel, eastern fox squirrel, Sciurus niger + 337 marmot + 338 beaver + 339 guinea pig, Cavia cobaya + 340 sorrel + 341 zebra + 342 hog, pig, grunter, squealer, Sus scrofa + 343 wild boar, boar, Sus scrofa + 344 warthog + 345 hippopotamus, hippo, river horse, Hippopotamus amphibius + 346 ox + 347 water buffalo, water ox, Asiatic buffalo, Bubalus bubalis + 348 bison + 349 ram, tup + 350 bighorn, bighorn sheep, cimarron, Rocky Mountain bighorn, Rocky Mountain sheep, Ovis canadensis + 351 ibex, Capra ibex + 352 hartebeest + 353 impala, Aepyceros melampus + 354 gazelle + 355 Arabian camel, dromedary, Camelus dromedarius + 356 llama + 357 weasel + 358 mink + 359 polecat, fitch, foulmart, foumart, Mustela putorius + 360 black-footed ferret, ferret, Mustela nigripes + 361 otter + 362 skunk, polecat, wood pussy + 363 badger + 364 armadillo + 365 three-toed sloth, ai, Bradypus tridactylus + 366 orangutan, orang, orangutang, Pongo pygmaeus + 367 gorilla, Gorilla gorilla + 368 chimpanzee, chimp, Pan troglodytes + 369 gibbon, Hylobates lar + 370 siamang, Hylobates syndactylus, Symphalangus syndactylus + 371 guenon, guenon monkey + 372 patas, hussar monkey, Erythrocebus patas + 373 baboon + 374 macaque + 375 langur + 376 colobus, colobus monkey + 377 proboscis monkey, Nasalis larvatus + 378 marmoset + 379 capuchin, ringtail, Cebus capucinus + 380 howler monkey, howler + 381 titi, titi monkey + 382 spider monkey, Ateles geoffroyi + 383 squirrel monkey, Saimiri sciureus + 384 Madagascar cat, ring-tailed lemur, Lemur catta + 385 indri, indris, Indri indri, Indri brevicaudatus + 386 Indian elephant, Elephas maximus + 387 African elephant, Loxodonta africana + 388 lesser panda, red panda, panda, bear cat, cat bear, Ailurus fulgens + 389 giant panda, panda, panda bear, coon bear, Ailuropoda melanoleuca + 390 barracouta, snoek + 391 eel + 392 coho, cohoe, coho salmon, blue jack, silver salmon, Oncorhynchus kisutch + 393 rock beauty, Holocanthus tricolor + 394 anemone fish + 395 sturgeon + 396 gar, garfish, garpike, billfish, Lepisosteus osseus + 397 lionfish + 398 puffer, pufferfish, blowfish, globefish + 399 abacus + 400 abaya + 401 academic gown, academic robe, judge's robe + 402 accordion, piano accordion, squeeze box + 403 acoustic guitar + 404 aircraft carrier, carrier, flattop, attack aircraft carrier + 405 airliner + 406 airship, dirigible + 407 altar + 408 ambulance + 409 amphibian, amphibious vehicle + 410 analog clock + 411 apiary, bee house + 412 apron + 413 ashcan, trash can, garbage can, wastebin, ash bin, ash-bin, ashbin, dustbin, trash barrel, trash bin + 414 assault rifle, assault gun + 415 backpack, back pack, knapsack, packsack, rucksack, haversack + 416 bakery, bakeshop, bakehouse + 417 balance beam, beam + 418 balloon + 419 ballpoint, ballpoint pen, ballpen, Biro + 420 Band Aid + 421 banjo + 422 bannister, banister, balustrade, balusters, handrail + 423 barbell + 424 barber chair + 425 barbershop + 426 barn + 427 barometer + 428 barrel, cask + 429 barrow, garden cart, lawn cart, wheelbarrow + 430 baseball + 431 basketball + 432 bassinet + 433 bassoon + 434 bathing cap, swimming cap + 435 bath towel + 436 bathtub, bathing tub, bath, tub + 437 beach wagon, station wagon, wagon, estate car, beach waggon, station waggon, waggon + 438 beacon, lighthouse, beacon light, pharos + 439 beaker + 440 bearskin, busby, shako + 441 beer bottle + 442 beer glass + 443 bell cote, bell cot + 444 bib + 445 bicycle-built-for-two, tandem bicycle, tandem + 446 bikini, two-piece + 447 binder, ring-binder + 448 binoculars, field glasses, opera glasses + 449 birdhouse + 450 boathouse + 451 bobsled, bobsleigh, bob + 452 bolo tie, bolo, bola tie, bola + 453 bonnet, poke bonnet + 454 bookcase + 455 bookshop, bookstore, bookstall + 456 bottlecap + 457 bow + 458 bow tie, bow-tie, bowtie + 459 brass, memorial tablet, plaque + 460 brassiere, bra, bandeau + 461 breakwater, groin, groyne, mole, bulwark, seawall, jetty + 462 breastplate, aegis, egis + 463 broom + 464 bucket, pail + 465 buckle + 466 bulletproof vest + 467 bullet train, bullet + 468 butcher shop, meat market + 469 cab, hack, taxi, taxicab + 470 caldron, cauldron + 471 candle, taper, wax light + 472 cannon + 473 canoe + 474 can opener, tin opener + 475 cardigan + 476 car mirror + 477 carousel, carrousel, merry-go-round, roundabout, whirligig + 478 carpenter's kit, tool kit + 479 carton + 480 car wheel + 481 cash machine, cash dispenser, automated teller machine, automatic teller machine, automated teller, automatic teller, ATM + 482 cassette + 483 cassette player + 484 castle + 485 catamaran + 486 CD player + 487 cello, violoncello + 488 cellular telephone, cellular phone, cellphone, cell, mobile phone + 489 chain + 490 chainlink fence + 491 chain mail, ring mail, mail, chain armor, chain armour, ring armor, ring armour + 492 chain saw, chainsaw + 493 chest + 494 chiffonier, commode + 495 chime, bell, gong + 496 china cabinet, china closet + 497 Christmas stocking + 498 church, church building + 499 cinema, movie theater, movie theatre, movie house, picture palace + 500 cleaver, meat cleaver, chopper + 501 cliff dwelling + 502 cloak + 503 clog, geta, patten, sabot + 504 cocktail shaker + 505 coffee mug + 506 coffeepot + 507 coil, spiral, volute, whorl, helix + 508 combination lock + 509 computer keyboard, keypad + 510 confectionery, confectionary, candy store + 511 container ship, containership, container vessel + 512 convertible + 513 corkscrew, bottle screw + 514 cornet, horn, trumpet, trump + 515 cowboy boot + 516 cowboy hat, ten-gallon hat + 517 cradle + 518 crane + 519 crash helmet + 520 crate + 521 crib, cot + 522 Crock Pot + 523 croquet ball + 524 crutch + 525 cuirass + 526 dam, dike, dyke + 527 desk + 528 desktop computer + 529 dial telephone, dial phone + 530 diaper, nappy, napkin + 531 digital clock + 532 digital watch + 533 dining table, board + 534 dishrag, dishcloth + 535 dishwasher, dish washer, dishwashing machine + 536 disk brake, disc brake + 537 dock, dockage, docking facility + 538 dogsled, dog sled, dog sleigh + 539 dome + 540 doormat, welcome mat + 541 drilling platform, offshore rig + 542 drum, membranophone, tympan + 543 drumstick + 544 dumbbell + 545 Dutch oven + 546 electric fan, blower + 547 electric guitar + 548 electric locomotive + 549 entertainment center + 550 envelope + 551 espresso maker + 552 face powder + 553 feather boa, boa + 554 file, file cabinet, filing cabinet + 555 fireboat + 556 fire engine, fire truck + 557 fire screen, fireguard + 558 flagpole, flagstaff + 559 flute, transverse flute + 560 folding chair + 561 football helmet + 562 forklift + 563 fountain + 564 fountain pen + 565 four-poster + 566 freight car + 567 French horn, horn + 568 frying pan, frypan, skillet + 569 fur coat + 570 garbage truck, dustcart + 571 gasmask, respirator, gas helmet + 572 gas pump, gasoline pump, petrol pump, island dispenser + 573 goblet + 574 go-kart + 575 golf ball + 576 golfcart, golf cart + 577 gondola + 578 gong, tam-tam + 579 gown + 580 grand piano, grand + 581 greenhouse, nursery, glasshouse + 582 grille, radiator grille + 583 grocery store, grocery, food market, market + 584 guillotine + 585 hair slide + 586 hair spray + 587 half track + 588 hammer + 589 hamper + 590 hand blower, blow dryer, blow drier, hair dryer, hair drier + 591 hand-held computer, hand-held microcomputer + 592 handkerchief, hankie, hanky, hankey + 593 hard disc, hard disk, fixed disk + 594 harmonica, mouth organ, harp, mouth harp + 595 harp + 596 harvester, reaper + 597 hatchet + 598 holster + 599 home theater, home theatre + 600 honeycomb + 601 hook, claw + 602 hoopskirt, crinoline + 603 horizontal bar, high bar + 604 horse cart, horse-cart + 605 hourglass + 606 iPod + 607 iron, smoothing iron + 608 jack-o'-lantern + 609 jean, blue jean, denim + 610 jeep, landrover + 611 jersey, T-shirt, tee shirt + 612 jigsaw puzzle + 613 jinrikisha, ricksha, rickshaw + 614 joystick + 615 kimono + 616 knee pad + 617 knot + 618 lab coat, laboratory coat + 619 ladle + 620 lampshade, lamp shade + 621 laptop, laptop computer + 622 lawn mower, mower + 623 lens cap, lens cover + 624 letter opener, paper knife, paperknife + 625 library + 626 lifeboat + 627 lighter, light, igniter, ignitor + 628 limousine, limo + 629 liner, ocean liner + 630 lipstick, lip rouge + 631 Loafer + 632 lotion + 633 loudspeaker, speaker, speaker unit, loudspeaker system, speaker system + 634 loupe, jeweler's loupe + 635 lumbermill, sawmill + 636 magnetic compass + 637 mailbag, postbag + 638 mailbox, letter box + 639 maillot + 640 maillot, tank suit + 641 manhole cover + 642 maraca + 643 marimba, xylophone + 644 mask + 645 matchstick + 646 maypole + 647 maze, labyrinth + 648 measuring cup + 649 medicine chest, medicine cabinet + 650 megalith, megalithic structure + 651 microphone, mike + 652 microwave, microwave oven + 653 military uniform + 654 milk can + 655 minibus + 656 miniskirt, mini + 657 minivan + 658 missile + 659 mitten + 660 mixing bowl + 661 mobile home, manufactured home + 662 Model T + 663 modem + 664 monastery + 665 monitor + 666 moped + 667 mortar + 668 mortarboard + 669 mosque + 670 mosquito net + 671 motor scooter, scooter + 672 mountain bike, all-terrain bike, off-roader + 673 mountain tent + 674 mouse, computer mouse + 675 mousetrap + 676 moving van + 677 muzzle + 678 nail + 679 neck brace + 680 necklace + 681 nipple + 682 notebook, notebook computer + 683 obelisk + 684 oboe, hautboy, hautbois + 685 ocarina, sweet potato + 686 odometer, hodometer, mileometer, milometer + 687 oil filter + 688 organ, pipe organ + 689 oscilloscope, scope, cathode-ray oscilloscope, CRO + 690 overskirt + 691 oxcart + 692 oxygen mask + 693 packet + 694 paddle, boat paddle + 695 paddlewheel, paddle wheel + 696 padlock + 697 paintbrush + 698 pajama, pyjama, pj's, jammies + 699 palace + 700 panpipe, pandean pipe, syrinx + 701 paper towel + 702 parachute, chute + 703 parallel bars, bars + 704 park bench + 705 parking meter + 706 passenger car, coach, carriage + 707 patio, terrace + 708 pay-phone, pay-station + 709 pedestal, plinth, footstall + 710 pencil box, pencil case + 711 pencil sharpener + 712 perfume, essence + 713 Petri dish + 714 photocopier + 715 pick, plectrum, plectron + 716 pickelhaube + 717 picket fence, paling + 718 pickup, pickup truck + 719 pier + 720 piggy bank, penny bank + 721 pill bottle + 722 pillow + 723 ping-pong ball + 724 pinwheel + 725 pirate, pirate ship + 726 pitcher, ewer + 727 plane, carpenter's plane, woodworking plane + 728 planetarium + 729 plastic bag + 730 plate rack + 731 plow, plough + 732 plunger, plumber's helper + 733 Polaroid camera, Polaroid Land camera + 734 pole + 735 police van, police wagon, paddy wagon, patrol wagon, wagon, black Maria + 736 poncho + 737 pool table, billiard table, snooker table + 738 pop bottle, soda bottle + 739 pot, flowerpot + 740 potter's wheel + 741 power drill + 742 prayer rug, prayer mat + 743 printer + 744 prison, prison house + 745 projectile, missile + 746 projector + 747 puck, hockey puck + 748 punching bag, punch bag, punching ball, punchball + 749 purse + 750 quill, quill pen + 751 quilt, comforter, comfort, puff + 752 racer, race car, racing car + 753 racket, racquet + 754 radiator + 755 radio, wireless + 756 radio telescope, radio reflector + 757 rain barrel + 758 recreational vehicle, RV, R.V. + 759 reel + 760 reflex camera + 761 refrigerator, icebox + 762 remote control, remote + 763 restaurant, eating house, eating place, eatery + 764 revolver, six-gun, six-shooter + 765 rifle + 766 rocking chair, rocker + 767 rotisserie + 768 rubber eraser, rubber, pencil eraser + 769 rugby ball + 770 rule, ruler + 771 running shoe + 772 safe + 773 safety pin + 774 saltshaker, salt shaker + 775 sandal + 776 sarong + 777 sax, saxophone + 778 scabbard + 779 scale, weighing machine + 780 school bus + 781 schooner + 782 scoreboard + 783 screen, CRT screen + 784 screw + 785 screwdriver + 786 seat belt, seatbelt + 787 sewing machine + 788 shield, buckler + 789 shoe shop, shoe-shop, shoe store + 790 shoji + 791 shopping basket + 792 shopping cart + 793 shovel + 794 shower cap + 795 shower curtain + 796 ski + 797 ski mask + 798 sleeping bag + 799 slide rule, slipstick + 800 sliding door + 801 slot, one-armed bandit + 802 snorkel + 803 snowmobile + 804 snowplow, snowplough + 805 soap dispenser + 806 soccer ball + 807 sock + 808 solar dish, solar collector, solar furnace + 809 sombrero + 810 soup bowl + 811 space bar + 812 space heater + 813 space shuttle + 814 spatula + 815 speedboat + 816 spider web, spider's web + 817 spindle + 818 sports car, sport car + 819 spotlight, spot + 820 stage + 821 steam locomotive + 822 steel arch bridge + 823 steel drum + 824 stethoscope + 825 stole + 826 stone wall + 827 stopwatch, stop watch + 828 stove + 829 strainer + 830 streetcar, tram, tramcar, trolley, trolley car + 831 stretcher + 832 studio couch, day bed + 833 stupa, tope + 834 submarine, pigboat, sub, U-boat + 835 suit, suit of clothes + 836 sundial + 837 sunglass + 838 sunglasses, dark glasses, shades + 839 sunscreen, sunblock, sun blocker + 840 suspension bridge + 841 swab, swob, mop + 842 sweatshirt + 843 swimming trunks, bathing trunks + 844 swing + 845 switch, electric switch, electrical switch + 846 syringe + 847 table lamp + 848 tank, army tank, armored combat vehicle, armoured combat vehicle + 849 tape player + 850 teapot + 851 teddy, teddy bear + 852 television, television system + 853 tennis ball + 854 thatch, thatched roof + 855 theater curtain, theatre curtain + 856 thimble + 857 thresher, thrasher, threshing machine + 858 throne + 859 tile roof + 860 toaster + 861 tobacco shop, tobacconist shop, tobacconist + 862 toilet seat + 863 torch + 864 totem pole + 865 tow truck, tow car, wrecker + 866 toyshop + 867 tractor + 868 trailer truck, tractor trailer, trucking rig, rig, articulated lorry, semi + 869 tray + 870 trench coat + 871 tricycle, trike, velocipede + 872 trimaran + 873 tripod + 874 triumphal arch + 875 trolleybus, trolley coach, trackless trolley + 876 trombone + 877 tub, vat + 878 turnstile + 879 typewriter keyboard + 880 umbrella + 881 unicycle, monocycle + 882 upright, upright piano + 883 vacuum, vacuum cleaner + 884 vase + 885 vault + 886 velvet + 887 vending machine + 888 vestment + 889 viaduct + 890 violin, fiddle + 891 volleyball + 892 waffle iron + 893 wall clock + 894 wallet, billfold, notecase, pocketbook + 895 wardrobe, closet, press + 896 warplane, military plane + 897 washbasin, handbasin, washbowl, lavabo, wash-hand basin + 898 washer, automatic washer, washing machine + 899 water bottle + 900 water jug + 901 water tower + 902 whiskey jug + 903 whistle + 904 wig + 905 window screen + 906 window shade + 907 Windsor tie + 908 wine bottle + 909 wing + 910 wok + 911 wooden spoon + 912 wool, woolen, woollen + 913 worm fence, snake fence, snake-rail fence, Virginia fence + 914 wreck + 915 yawl + 916 yurt + 917 web site, website, internet site, site + 918 comic book + 919 crossword puzzle, crossword + 920 street sign + 921 traffic light, traffic signal, stoplight + 922 book jacket, dust cover, dust jacket, dust wrapper + 923 menu + 924 plate + 925 guacamole + 926 consomme + 927 hot pot, hotpot + 928 trifle + 929 ice cream, icecream + 930 ice lolly, lolly, lollipop, popsicle + 931 French loaf + 932 bagel, beigel + 933 pretzel + 934 cheeseburger + 935 hotdog, hot dog, red hot + 936 mashed potato + 937 head cabbage + 938 broccoli + 939 cauliflower + 940 zucchini, courgette + 941 spaghetti squash + 942 acorn squash + 943 butternut squash + 944 cucumber, cuke + 945 artichoke, globe artichoke + 946 bell pepper + 947 cardoon + 948 mushroom + 949 Granny Smith + 950 strawberry + 951 orange + 952 lemon + 953 fig + 954 pineapple, ananas + 955 banana + 956 jackfruit, jak, jack + 957 custard apple + 958 pomegranate + 959 hay + 960 carbonara + 961 chocolate sauce, chocolate syrup + 962 dough + 963 meat loaf, meatloaf + 964 pizza, pizza pie + 965 potpie + 966 burrito + 967 red wine + 968 espresso + 969 cup + 970 eggnog + 971 alp + 972 bubble + 973 cliff, drop, drop-off + 974 coral reef + 975 geyser + 976 lakeside, lakeshore + 977 promontory, headland, head, foreland + 978 sandbar, sand bar + 979 seashore, coast, seacoast, sea-coast + 980 valley, vale + 981 volcano + 982 ballplayer, baseball player + 983 groom, bridegroom + 984 scuba diver + 985 rapeseed + 986 daisy + 987 yellow lady's slipper, yellow lady-slipper, Cypripedium calceolus, Cypripedium parviflorum + 988 corn + 989 acorn + 990 hip, rose hip, rosehip + 991 buckeye, horse chestnut, conker + 992 coral fungus + 993 agaric + 994 gyromitra + 995 stinkhorn, carrion fungus + 996 earthstar + 997 hen-of-the-woods, hen of the woods, Polyporus frondosus, Grifola frondosa + 998 bolete + 999 ear, spike, capitulum +1000 toilet tissue, toilet paper, bathroom tissue \ No newline at end of file
diff --git a/classifier-start/models/inception_v2_224_quant.tflite b/classifier-start/models/inception_v2_224_quant.tflite new file mode 100644 index 0000000..f6eed74 --- /dev/null +++ b/classifier-start/models/inception_v2_224_quant.tflite Binary files differ