Row 2142
Content Data
This page contains data entry 2142 from the Axioma AXP content repository. The structured data below represents the complete record for this entry.
I have a tflite model that I trained on customvision azure to recognize a basketball.
​
When I check the meta data it tells me a lot of stuff that as a beginner i am not sure about what it is supposed to be. For example, my tflite yolo model expects as input a tensor of \[1,13,13,35\]. I get that I am supposed to have one image batch of dimension 13\*13, but why 35? Does that have something to do with the yolo model and the grids?
​
Thanks a lot in advance for any help. This is in flutter how i so far code the screen:
import 'dart:ffi'; import 'dart:math'; import 'package:camera/camera.dart'; import 'dart:io'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:hoopster/PermanentStorage.dart'; import 'package:hoopster/statsObjects.dart'; import 'package:tflite\_flutter/tflite\_flutter.dart' as tfl; import 'dart:typed\_data'; import 'package:image/image.dart' as img; import 'package:image\_gallery\_saver/image\_gallery\_saver.dart'; import 'package:path\_provider/path\_provider.dart'; import '../main.dart'; import 'home\_screen.dart'; int i = 0; late CameraImage \_cameraImage; int counter = 0; String lastSaved = ""; int Hit = 0; int Miss = 0; var height; var width; class CameraApp extends StatefulWidget { const CameraApp({Key? key}) : super(key: key); u/override State<CameraApp> createState() => \_CameraAppState(); } class \_CameraAppState extends State<CameraApp> { late CameraController controller; late Future<void> \_initializeControllerFuture; String \_videoPath = ''; u/override void initState() { super.initState(); controller = CameraController( cameras.last, ResolutionPreset.medium, ); // Initiate the loading of the model loadModel().then((interpreter) { // Model has been loaded at this point \_initializeControllerFuture = controller.initialize().then((\_) { controller.startImageStream((image) { \_cameraFrameProcessing(image, interpreter); }); if (!mounted) { return; } setState(() {}); }).catchError((Object e) { if (e is CameraException) { switch (e.code) { case 'CameraAccessDenied': // Handle access errors here. break; default: // Handle other errors here. break; } } }); }); } void \_cameraFrameProcessing(CameraImage image, tfl.Interpreter interpreter) { \_cameraImage = image; processCameraFrame(image, interpreter); // Process each camera frame } Future<tfl.Interpreter> loadModel() async { return tfl.Interpreter.fromAsset('Assets\\\\model.tflite'); } Future<void> processCameraFrame( CameraImage image, tfl.Interpreter interpreter) async { try { print('processing camera frame'); // Convert the CameraImage to a byte buffer Float32List convertedImage = convertCameraImage(image); // Create output tensor. Assuming model has a single output var output = interpreter.getOutputTensor(0).shape; print(output); // Create input tensor with the desired shape var inputShape = interpreter.getInputTensor(0).shape; //print(inputShape); print("eo"); //var inputShape = \[1, 13, 13, 35\]; var inputTensor = <List<List<List<dynamic>>>>\[ List.generate(inputShape\[1\], (\_) { return List.generate(inputShape\[2\], (\_) { return List.generate(inputShape\[3\], (\_) { return \[ 0.0 \]; // Placeholder value, modify this according to your needs }); }); }) \]; print("mamaaaaaa"); print(inputTensor); print(convertedImage.length); // Copy the convertedImage data into the inputTensor for (int i = 0; i < convertedImage.length; i++) { print("see"); int x = i % inputShape\[2\]; int y = (i \~/ inputShape\[2\]) % inputShape\[1\]; int c = (i \~/ (inputShape\[1\] \* inputShape\[2\])) % inputShape\[3\]; //print("see2"); inputTensor\[y\]\[x\]\[c\]\[0\] = convertedImage\[i\]; print("$x,$y,$c,$i"); } // Run inference on the frame print("here, line 116"); interpreter.runForMultipleInputs(inputTensor, {0: output}); print(output); // Process the inference results //print("here2, line 120"); //processInferenceResults(output); } catch (e) { print('Failed to run model on frame: $e'); } print('done executing'); } Float32List convertCameraImage(CameraImage image) { print('converting image'); final width = image.width; final height = image.height; final int uvRowStride = image.planes\[1\].bytesPerRow; final int? uvPixelStride = image.planes\[1\].bytesPerPixel; // Create an Image buffer img.Image imago = img.Image(width, height); for (int x = 0; x < width; x++) { for (int y = 0; y < height; y++) { final int uvIndex = uvPixelStride! \* (x / 2).floor() + uvRowStride \* (y / 2).floor(); final int index = y \* width + x; final int yValue = image.planes\[0\].bytes\[index\]; final int uValue = image.planes\[1\].bytes\[uvIndex\]; final int vValue = image.planes\[2\].bytes\[uvIndex\]; List rgbColor = yuv2rgb(yValue, uValue, vValue); // Set the pixel color imago.setPixelRgba(x, y, rgbColor\[0\], rgbColor\[1\], rgbColor\[2\]); } } // Resize the image to 13x13 img.Image resizedImage = img.copyResize(imago, width: 13, height: 13); // Create a new Float32List with the correct shape: \[1, 13, 13, 35\] Float32List modelInput = Float32List(1 \* 13 \* 13 \* 35); // Copy the resized RGB image data into the first three channels of the model input for (int i = 0; i < 13 \* 13; i++) { int x = i % 13; int y = i \~/ 13; int pixel = resizedImage.getPixel(x, y) \~/ 255; ; modelInput\[i \* 35 + 0\] = img.getRed(pixel).toDouble(); modelInput\[i \* 35 + 1\] = img.getGreen(pixel).toDouble(); modelInput\[i \* 35 + 2\] = img.getBlue(pixel).toDouble(); } // Fill in the remaining 32 channels with zeros (or whatever is appropriate for your model) for (int i = 0; i < 13 \* 13; i++) { for (int j = 3; j < 35; j++) { modelInput\[i \* 35 + j\] = 0.0; } } print('finished converting image'); // Now you can use modelInput as the input to your model return modelInput; } void processInferenceResults(List<dynamic> output) { print('test'); print(output.toString()); // Process the inference output to get the labels and their coordinates List<Map<String, dynamic>> labels = \[\]; for (dynamic label in output) { String text = label\['label'\]; double confidence = label\['confidence'\]; Map<String, dynamic> coordinates = label\['rect'\]; // Check if the label is "ball" or "hoop" if (text == "ball" || text == "hoop") { labels.add({ 'text': text, 'confidence': confidence, 'coordinates': coordinates, }); } } if (labels.isEmpty) { // No recognitions found, do nothing return; } // Do something with the filtered labels // ... } u/override void dispose() { controller.dispose(); super.dispose(); } Future<void> \_onRecordButtonPressed() async { try { if (controller.value.isRecordingVideo) { final path = await controller.stopVideoRecording(); setState(() { \_videoPath = path as String; }); //processVideo( // \_videoPath); // Pass the video path to the processing function } else { await \_initializeControllerFuture; final now = DateTime.now(); final formattedDate = '${now.year}-${now.month}-${now.day} ${now.hour}-${now.minute}-${now.second}'; final fileName = 'hoopster\_${formattedDate}.mp4'; final path = '${Directory.systemTemp.path}/$fileName'; print(path); //await controller.startVideoRecording(); } } catch (e) { print(e); } } Future<void> stopVideoRecording() async { if (!controller.value.isInitialized) { return; } if (!controller.value.isRecordingVideo) { return; } try { await controller.stopVideoRecording(); } on CameraException catch (e) { print('Error: ${e.code}\\n${e.description}'); return; } } Future<void> \_saveImage(List<int> \_imageBytes) async { counter++; final directory = await getApplicationDocumentsDirectory(); final imagePath = '${directory.path}/frame${counter}.png'; lastSaved = imagePath; final imageFile = File(imagePath); await imageFile.writeAsBytes(\_imageBytes); print('Image saved to: $imagePath'); } void capture() async { int \_1 = Random().nextInt(20); int \_2 = Random().nextInt(20); DateTime n = DateTime.now(); setState(() { // allSessions.add(Session(n, \_1, \_2)); // lView = globalUpdate(); }); if (\_cameraImage != null) { Uint8List colored = Uint8List(\_cameraImage.planes\[0\].bytes.length \* 3); int b = 0; img.Image image = \_cameraImage as img.Image; var input = \[1, 13, 13, 3\]; //img.Image image = convertCameraImage(\_cameraImage); img.Image Rimage = img.copyRotate(image, 90); \_saveImage(Rimage.data); // Convert the image to RGB format using image package // img.Image image = img.Image.fromBytes( // \_cameraImage.width, // \_cameraImage.height, // \_cameraImage.planes\[0\].bytes, // format: img.Format.yuv420, // ); // img.Image Rimage = img.copyRotate(image, 90); // \_saveImage(Rimage.getBytes(format: img.Format.rgb)); // Run inference on the converted image // Process the inference results } } @override Widget build(BuildContext context) { if (!controller.value.isInitialized) { return Container( color: Color.fromARGB(255, 255, 0, 0), ); } return Scaffold( body: Container( child: Column( children: \[ SizedBox(child: CameraPreview(controller)), Expanded( child: Container( color: Color.fromARGB(255, 93, 70, 94), child: Row( mainAxisAlignment: MainAxisAlignment.center, children: \[ Text( Hit.toString(), style: TextStyle( fontFamily: "Dogica", fontSize: 60, color: Color.fromARGB(255, 0, 255, 0), ), ), Padding( padding: EdgeInsets.fromLTRB((w / 3) - 65, 0, (w / 3) - 65, 0), child: GestureDetector( child: Container( height: 80, width: 80, decoration: BoxDecoration( image: DecorationImage( image: AssetImage(basketButton), fit: BoxFit.fill, ), boxShadow: \[ BoxShadow( color: Color.fromARGB(80, 0, 0, 0), spreadRadius: 1, blurRadius: 5, ) \], color: Color.fromARGB(0, 255, 255, 255), borderRadius: BorderRadius.all( Radius.circular(30), ), ), ), onTap: () => { //capture(), setState(() { Miss++; Hit++; }) }, onDoubleTap: () => { //Session s= Session(DateTime.now(), 10, 7); }, ), ), Text( Miss.toString(), style: TextStyle( fontFamily: "Dogica", fontSize: 60, color: Color.fromARGB(255, 255, 0, 0), ), ), \], ), ), ), \], ), ), ); } } Uint8List yuv2rgb(int y, int u, int v) { double yd = y.toDouble(); double ud = u.toDouble() - 128.0; double vd = v.toDouble() - 128.0; double r = yd + 1.402 \* vd; double g = yd - 0.344136 \* ud - 0.714136 \* vd; double b = yd + 1.772 \* ud; r = r.clamp(0, 255).roundToDouble(); g = g.clamp(0, 255).roundToDouble(); b = b.clamp(0, 255).roundToDouble(); return Uint8List.fromList(\[r.toInt(), g.toInt(), b.toInt()\]); }
| Field | Value |
|---|---|
| text | I have a tflite model that I trained on customvision azure to recognize a basketball. ​ When I check the meta data it tells me a lot of stuff that as a beginner i am not sure about what it is supposed to be. For example, my tflite yolo model expects as input a tensor of \[1,13,13,35\]. I get that I am supposed to have one image batch of dimension 13\*13, but why 35? Does that have something to do with the yolo model and the grids? ​ Thanks a lot in advance for any help. This is… |
| label | r/tensorflow |
| dataType | post |
| communityName | r/tensorflow |
| datetime | 2023-06-30 |
| username_encoded | Z0FBQUFBQm5LakwwbktLNDVlRWpCU2ZHVWl1TTVzOFRfQ1FXZDZyTnVoMHo4b2VkZUR6NFM1SnBydGw0Y3pZQzFsNmlSVnMwNW5SWG9ZQWcxNFRESkx6eElJU3pER1lvckE9PQ== |
| url_encoded | Z0FBQUFBQm5Lak9FckZ0M2N3OHFMcWFWYlFQM0dLSG9VTktZc0ozbGRkQ1RiWFV3R2QwTWVPdmRFbXBGSC1Yc3NoRTV2akdCRUF1bXRaLXV1UjJpSnBtRXQwREdqaXBCZ2ZZX2NwZFQzNU5nY1hiMGlOeW82cEZtaHF4UUFuUjdGM0FjeXBxb0RJN2V0LTBzQ2VOM0U3MF9oaFF2MGh4eVpHSTA5X1lWbm1JZUhkYUtfa01iTFRHby03SDlkXzR0ZDJaYWdtekxfWkV1ZDhVcW1PenJhUk1nX0FXVF8tWEpKdz09 |
Raw Record
{
"text": "I have a tflite model that I trained on customvision azure to recognize a basketball.\n\n​\n\nWhen I check the meta data it tells me a lot of stuff that as a beginner i am not sure about what it is supposed to be. For example, my tflite yolo model expects as input a tensor of \\[1,13,13,35\\]. I get that I am supposed to have one image batch of dimension 13\\*13, but why 35? Does that have something to do with the yolo model and the grids?\n\n​\n\nThanks a lot in advance for any help. This is in flutter how i so far code the screen:\n\nimport 'dart:ffi'; \nimport 'dart:math'; \nimport 'package:camera/camera.dart'; \nimport 'dart:io'; \nimport 'package:flutter/material.dart'; \nimport 'package:get/get.dart'; \nimport 'package:hoopster/PermanentStorage.dart'; \nimport 'package:hoopster/statsObjects.dart'; \nimport 'package:tflite\\_flutter/tflite\\_flutter.dart' as tfl; \nimport 'dart:typed\\_data'; \nimport 'package:image/image.dart' as img; \nimport 'package:image\\_gallery\\_saver/image\\_gallery\\_saver.dart'; \nimport 'package:path\\_provider/path\\_provider.dart'; \nimport '../main.dart'; \nimport 'home\\_screen.dart'; \nint i = 0; \nlate CameraImage \\_cameraImage; \nint counter = 0; \nString lastSaved = \"\"; \nint Hit = 0; \nint Miss = 0; \nvar height; \nvar width; \nclass CameraApp extends StatefulWidget { \n const CameraApp({Key? key}) : super(key: key); \n u/override \n State<CameraApp> createState() => \\_CameraAppState(); \n} \nclass \\_CameraAppState extends State<CameraApp> { \n late CameraController controller; \n late Future<void> \\_initializeControllerFuture; \n String \\_videoPath = ''; \n u/override \n void initState() { \n super.initState(); \n controller = CameraController( \n cameras.last, \n ResolutionPreset.medium, \n); \n // Initiate the loading of the model \n loadModel().then((interpreter) { \n // Model has been loaded at this point \n \\_initializeControllerFuture = controller.initialize().then((\\_) { \n controller.startImageStream((image) { \n \\_cameraFrameProcessing(image, interpreter); \n}); \n if (!mounted) { \n return; \n} \n setState(() {}); \n}).catchError((Object e) { \n if (e is CameraException) { \n switch (e.code) { \n case 'CameraAccessDenied': \n // Handle access errors here. \n break; \n default: \n // Handle other errors here. \n break; \n} \n} \n}); \n}); \n } \n void \\_cameraFrameProcessing(CameraImage image, tfl.Interpreter interpreter) { \n \\_cameraImage = image; \n processCameraFrame(image, interpreter); // Process each camera frame \n } \n Future<tfl.Interpreter> loadModel() async { \n return tfl.Interpreter.fromAsset('Assets\\\\\\\\model.tflite'); \n } \n Future<void> processCameraFrame( \n CameraImage image, tfl.Interpreter interpreter) async { \n try { \n print('processing camera frame'); \n // Convert the CameraImage to a byte buffer \n Float32List convertedImage = convertCameraImage(image); \n // Create output tensor. Assuming model has a single output \n var output = interpreter.getOutputTensor(0).shape; \n print(output); \n // Create input tensor with the desired shape \n var inputShape = interpreter.getInputTensor(0).shape; \n //print(inputShape); \n print(\"eo\"); \n //var inputShape = \\[1, 13, 13, 35\\]; \n var inputTensor = <List<List<List<dynamic>>>>\\[ \n List.generate(inputShape\\[1\\], (\\_) { \n return List.generate(inputShape\\[2\\], (\\_) { \n return List.generate(inputShape\\[3\\], (\\_) { \n return \\[ \n 0.0 \n\\]; // Placeholder value, modify this according to your needs \n}); \n}); \n}) \n\\]; \n print(\"mamaaaaaa\"); \n print(inputTensor); \n print(convertedImage.length); \n // Copy the convertedImage data into the inputTensor \n for (int i = 0; i < convertedImage.length; i++) { \n print(\"see\"); \n int x = i % inputShape\\[2\\]; \n int y = (i \\~/ inputShape\\[2\\]) % inputShape\\[1\\]; \n int c = (i \\~/ (inputShape\\[1\\] \\* inputShape\\[2\\])) % inputShape\\[3\\]; \n //print(\"see2\"); \n inputTensor\\[y\\]\\[x\\]\\[c\\]\\[0\\] = convertedImage\\[i\\]; \n print(\"$x,$y,$c,$i\"); \n} \n // Run inference on the frame \n print(\"here, line 116\"); \n interpreter.runForMultipleInputs(inputTensor, {0: output}); \n print(output); \n // Process the inference results \n //print(\"here2, line 120\"); \n //processInferenceResults(output); \n} catch (e) { \n print('Failed to run model on frame: $e'); \n} \n print('done executing'); \n } \n Float32List convertCameraImage(CameraImage image) { \n print('converting image'); \n final width = image.width; \n final height = image.height; \n final int uvRowStride = image.planes\\[1\\].bytesPerRow; \n final int? uvPixelStride = image.planes\\[1\\].bytesPerPixel; \n // Create an Image buffer \n img.Image imago = img.Image(width, height); \n for (int x = 0; x < width; x++) { \n for (int y = 0; y < height; y++) { \n final int uvIndex = \n uvPixelStride! \\* (x / 2).floor() + uvRowStride \\* (y / 2).floor(); \n final int index = y \\* width + x; \n final int yValue = image.planes\\[0\\].bytes\\[index\\]; \n final int uValue = image.planes\\[1\\].bytes\\[uvIndex\\]; \n final int vValue = image.planes\\[2\\].bytes\\[uvIndex\\]; \n List rgbColor = yuv2rgb(yValue, uValue, vValue); \n // Set the pixel color \n imago.setPixelRgba(x, y, rgbColor\\[0\\], rgbColor\\[1\\], rgbColor\\[2\\]); \n} \n} \n // Resize the image to 13x13 \n img.Image resizedImage = img.copyResize(imago, width: 13, height: 13); \n // Create a new Float32List with the correct shape: \\[1, 13, 13, 35\\] \n Float32List modelInput = Float32List(1 \\* 13 \\* 13 \\* 35); \n // Copy the resized RGB image data into the first three channels of the model input \n for (int i = 0; i < 13 \\* 13; i++) { \n int x = i % 13; \n int y = i \\~/ 13; \n int pixel = resizedImage.getPixel(x, y) \\~/ 255; \n; \n modelInput\\[i \\* 35 + 0\\] = img.getRed(pixel).toDouble(); \n modelInput\\[i \\* 35 + 1\\] = img.getGreen(pixel).toDouble(); \n modelInput\\[i \\* 35 + 2\\] = img.getBlue(pixel).toDouble(); \n} \n // Fill in the remaining 32 channels with zeros (or whatever is appropriate for your model) \n for (int i = 0; i < 13 \\* 13; i++) { \n for (int j = 3; j < 35; j++) { \n modelInput\\[i \\* 35 + j\\] = 0.0; \n} \n} \n print('finished converting image'); \n // Now you can use modelInput as the input to your model \n return modelInput; \n } \n void processInferenceResults(List<dynamic> output) { \n print('test'); \n print(output.toString()); \n // Process the inference output to get the labels and their coordinates \n List<Map<String, dynamic>> labels = \\[\\]; \n for (dynamic label in output) { \n String text = label\\['label'\\]; \n double confidence = label\\['confidence'\\]; \n Map<String, dynamic> coordinates = label\\['rect'\\]; \n // Check if the label is \"ball\" or \"hoop\" \n if (text == \"ball\" || text == \"hoop\") { \n labels.add({ \n 'text': text, \n 'confidence': confidence, \n 'coordinates': coordinates, \n}); \n} \n} \n if (labels.isEmpty) { \n // No recognitions found, do nothing \n return; \n} \n // Do something with the filtered labels \n // ... \n } \n u/override \n void dispose() { \n controller.dispose(); \n super.dispose(); \n } \n Future<void> \\_onRecordButtonPressed() async { \n try { \n if (controller.value.isRecordingVideo) { \n final path = await controller.stopVideoRecording(); \n setState(() { \n \\_videoPath = path as String; \n}); \n //processVideo( \n // \\_videoPath); // Pass the video path to the processing function \n} else { \n await \\_initializeControllerFuture; \n final now = DateTime.now(); \n final formattedDate = \n '${now.year}-${now.month}-${now.day} ${now.hour}-${now.minute}-${now.second}'; \n final fileName = 'hoopster\\_${formattedDate}.mp4'; \n final path = '${Directory.systemTemp.path}/$fileName'; \n print(path); \n //await controller.startVideoRecording(); \n} \n} catch (e) { \n print(e); \n} \n } \n Future<void> stopVideoRecording() async { \n if (!controller.value.isInitialized) { \n return; \n} \n if (!controller.value.isRecordingVideo) { \n return; \n} \n try { \n await controller.stopVideoRecording(); \n} on CameraException catch (e) { \n print('Error: ${e.code}\\\\n${e.description}'); \n return; \n} \n } \n Future<void> \\_saveImage(List<int> \\_imageBytes) async { \n counter++; \n final directory = await getApplicationDocumentsDirectory(); \n final imagePath = '${directory.path}/frame${counter}.png'; \n lastSaved = imagePath; \n final imageFile = File(imagePath); \n await imageFile.writeAsBytes(\\_imageBytes); \n print('Image saved to: $imagePath'); \n } \n void capture() async { \n int \\_1 = Random().nextInt(20); \n int \\_2 = Random().nextInt(20); \n DateTime n = DateTime.now(); \n setState(() { \n // allSessions.add(Session(n, \\_1, \\_2)); \n // lView = globalUpdate(); \n}); \n if (\\_cameraImage != null) { \n Uint8List colored = Uint8List(\\_cameraImage.planes\\[0\\].bytes.length \\* 3); \n int b = 0; \n img.Image image = \\_cameraImage as img.Image; \n var input = \\[1, 13, 13, 3\\]; \n //img.Image image = convertCameraImage(\\_cameraImage); \n img.Image Rimage = img.copyRotate(image, 90); \n \\_saveImage(Rimage.data); \n // Convert the image to RGB format using image package \n // img.Image image = img.Image.fromBytes( \n // \\_cameraImage.width, \n // \\_cameraImage.height, \n // \\_cameraImage.planes\\[0\\].bytes, \n // format: img.Format.yuv420, \n // ); \n // img.Image Rimage = img.copyRotate(image, 90); \n // \\_saveImage(Rimage.getBytes(format: img.Format.rgb)); \n // Run inference on the converted image \n // Process the inference results \n} \n } \n @override \n Widget build(BuildContext context) { \n if (!controller.value.isInitialized) { \n return Container( \n color: Color.fromARGB(255, 255, 0, 0), \n); \n} \n return Scaffold( \n body: Container( \n child: Column( \n children: \\[ \n SizedBox(child: CameraPreview(controller)), \n Expanded( \n child: Container( \n color: Color.fromARGB(255, 93, 70, 94), \n child: Row( \n mainAxisAlignment: MainAxisAlignment.center, \n children: \\[ \n Text( \n Hit.toString(), \n style: TextStyle( \n fontFamily: \"Dogica\", \n fontSize: 60, \n color: Color.fromARGB(255, 0, 255, 0), \n), \n), \n Padding( \n padding: \n EdgeInsets.fromLTRB((w / 3) - 65, 0, (w / 3) - 65, 0), \n child: GestureDetector( \n child: Container( \n height: 80, \n width: 80, \n decoration: BoxDecoration( \n image: DecorationImage( \n image: AssetImage(basketButton), \n fit: BoxFit.fill, \n), \n boxShadow: \\[ \n BoxShadow( \n color: Color.fromARGB(80, 0, 0, 0), \n spreadRadius: 1, \n blurRadius: 5, \n) \n\\], \n color: Color.fromARGB(0, 255, 255, 255), \n borderRadius: BorderRadius.all( \n Radius.circular(30), \n), \n), \n), \n onTap: () => { \n //capture(), \n setState(() { \n Miss++; \n Hit++; \n}) \n}, \n onDoubleTap: () => { \n //Session s= Session(DateTime.now(), 10, 7); \n}, \n), \n), \n Text( \n Miss.toString(), \n style: TextStyle( \n fontFamily: \"Dogica\", \n fontSize: 60, \n color: Color.fromARGB(255, 255, 0, 0), \n), \n), \n\\], \n), \n), \n), \n\\], \n), \n), \n); \n } \n} \nUint8List yuv2rgb(int y, int u, int v) { \n double yd = y.toDouble(); \n double ud = u.toDouble() - 128.0; \n double vd = v.toDouble() - 128.0; \n double r = yd + 1.402 \\* vd; \n double g = yd - 0.344136 \\* ud - 0.714136 \\* vd; \n double b = yd + 1.772 \\* ud; \n r = r.clamp(0, 255).roundToDouble(); \n g = g.clamp(0, 255).roundToDouble(); \n b = b.clamp(0, 255).roundToDouble(); \n return Uint8List.fromList(\\[r.toInt(), g.toInt(), b.toInt()\\]); \n} \n",
"label": "r/tensorflow",
"dataType": "post",
"communityName": "r/tensorflow",
"datetime": "2023-06-30",
"username_encoded": "Z0FBQUFBQm5LakwwbktLNDVlRWpCU2ZHVWl1TTVzOFRfQ1FXZDZyTnVoMHo4b2VkZUR6NFM1SnBydGw0Y3pZQzFsNmlSVnMwNW5SWG9ZQWcxNFRESkx6eElJU3pER1lvckE9PQ==",
"url_encoded": "Z0FBQUFBQm5Lak9FckZ0M2N3OHFMcWFWYlFQM0dLSG9VTktZc0ozbGRkQ1RiWFV3R2QwTWVPdmRFbXBGSC1Yc3NoRTV2akdCRUF1bXRaLXV1UjJpSnBtRXQwREdqaXBCZ2ZZX2NwZFQzNU5nY1hiMGlOeW82cEZtaHF4UUFuUjdGM0FjeXBxb0RJN2V0LTBzQ2VOM0U3MF9oaFF2MGh4eVpHSTA5X1lWbm1JZUhkYUtfa01iTFRHby03SDlkXzR0ZDJaYWdtekxfWkV1ZDhVcW1PenJhUk1nX0FXVF8tWEpKdz09"
}
Entry Information
- Entry ID: 2142
- Repository: Axioma AXP
- Dataset: arrmlet/reddit_dataset_36
- Total Entries: 100,000