Skip to content

Instantly share code, notes, and snippets.

@BoHellgren
BoHellgren / breedinfo.dart
Created January 10, 2020 15:22
breedinfo
import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';
class BreedInfo extends StatelessWidget {
final String breed;
BreedInfo({Key key, @required this.breed});
@override
Widget build(BuildContext context) {
String url = 'https://en.wikipedia.org/wiki/' + breed;
@BoHellgren
BoHellgren / main.dart
Last active December 28, 2020 10:35
Final main-dart
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:camera/camera.dart';
import 'package:soundpool/soundpool.dart';
import 'dart:ui' as ui;
import 'dart:typed_data';
import 'package:image/image.dart' as imglib;
import 'package:flutter/foundation.dart';
import 'package:tflite/tflite.dart';
import 'breedinfo.dart';
@BoHellgren
BoHellgren / mini_ml.dart
Created March 2, 2020 09:45
mini_ml dart code
import 'dart:async';
import 'dart:typed_data';
import 'dart:ui';
import 'package:flutter/services.dart';
class MiniMl {
static const MethodChannel _channel =
const MethodChannel('plugins.flutter.io/mini_ml');
@BoHellgren
BoHellgren / MiniMLPlugin.java
Created March 2, 2020 09:55
mini_ml java code
package se.ndssoft.mini_ml;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Matrix;
import androidx.annotation.NonNull;
import com.google.android.gms.tasks.OnFailureListener;
import com.google.android.gms.tasks.OnSuccessListener;
@BoHellgren
BoHellgren / _findDog.dart
Created March 2, 2020 12:44
_findDog MLKit version
Future<Rect> _findDog(CameraImage image) async {
imglib.Image img = _convertCameraImage(image);
Uint8List png = imglib.encodePng(img);
List<VisionLabel> _onDeviceLabels =
await labelDetector.detectFromBinary(png, false);
bool foundDog = false;
for (int i = 0; i < _onDeviceLabels.length; i++) {
if (_onDeviceLabels[i].label == "Dog") foundDog = true;
}
if (foundDog) {
@BoHellgren
BoHellgren / _classifyDog.dart
Last active March 4, 2020 12:25
_classifyDog MLKit version
Future<String> _classifyDog(imglib.Image img) async {
Uint8List png = imglib.encodePng(img);
List<VisionLabel> _cloudLabels =
await labelDetector.detectFromBinary(png, true);
for (int i = 0; i < _cloudLabels.length; i++) {
String foundLabel = _cloudLabels[i].label;
print(foundLabel);
if (isBreed(foundLabel)) {
String conf = (_cloudLabels[i].confidence * 100).toStringAsFixed(0);
print(foundLabel + ' ' + conf);
@BoHellgren
BoHellgren / main.dart
Last active October 8, 2021 14:34
main.dart for MLKit version
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:camera/camera.dart';
import 'package:soundpool/soundpool.dart';
import 'dart:ui' as ui;
import 'dart:typed_data';
import 'package:image/image.dart' as imglib;
import 'package:flutter/foundation.dart';
import 'breedinfo.dart';
import 'package:image_gallery_saver/image_gallery_saver.dart';
@BoHellgren
BoHellgren / main.dart
Last active April 23, 2020 17:17
Game main.dart step 1
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
@BoHellgren
BoHellgren / main.dart
Last active April 23, 2020 17:16
Game main.dart step 2
import 'package:flutter/material.dart';
import 'package:flame/components/component.dart';
import 'package:flame/sprite.dart';
import 'package:flame/flame.dart';
import 'package:audioplayers/audioplayers.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'gameclasses.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
@BoHellgren
BoHellgren / gnat.dart
Last active April 21, 2020 14:37
Gnat class
class Gnat extends SpriteComponent with Tapable {
Sprite sprite;
double xMax, yMax;
double xSpeed, ySpeed;
double spriteSize;
final spriteSpeed = 18.0;
final spriteMin = 30.0;
final spriteMax = 60.0;
bool wall = false;
bool remove = false;