Я фотографирую свою камеру и когда вызывается OnPictureTaken, я получаю байт []. Я пытаюсь преобразовать массив байтов в System.IO.Stream. Это помогает мне анализировать изображение в Project Oxford API. Я пробовал бесчисленные способы сделать это, но, похоже, я не могу найти решение. Буду очень признателен, если вы поможете мне.Изображение в виде массива байтов для потока
0
A
ответ
2
Вы можете использовать MemoryStream
класс, который создает поток подкрепленной массив байт: MSDN link
0
При использовании Client SDK, которым вы можете получить с помощью NuGet, вы должны предоставить Stream
методы, как VisionServiceClient.AnalyzeImageAsync()
.
Вы можете создать Stream
из-за byte[]
и предоставить его в SDK, как это:
using (var stream = new MemoryStream(yourByteArray))
{
var visionServiceClient = new VisionServiceClient("YOUR_API_KEY");
var visualFeatures = new VisualFeature[] { VisualFeature.Adult, VisualFeature.Categories, VisualFeature.Color, VisualFeature.Description, VisualFeature.Faces, VisualFeature.ImageType, VisualFeature.Tags };
var result = await visionServiceClient.AnalyzeImageAsync(stream, visualFeatures);
}
Подсказка: В Android вы часто в конечном итоге с Android.Graphics.Bitmap
объекта при работе с изображениями. Особенно при съемке с камерой. Вы также можете преобразовать их в потоки с помощью imageBitmap.Compress(Bitmap.CompressFormat.Jpeg, 0, stream);
, но не забудьте «перемотать» поток с помощью stream.Seek(0, SeekOrigin.Begin);
, иначе SDK выдает исключение.
Смежные вопросы
- 1. ServiceStack - загружать файлы в виде потока байтов?
- 2. Передача изображения в виде массива байтов
- 3. Получить изображение в виде потока или массива байтов с помощью OpenRasta
- 4. Преобразование массива байтов в изображение
- 5. Класс C# для хранения байтов в виде потока
- 6. Преобразование массива байтов в изображение
- 7. размер полукокса в виде массива байтов
- 8. Изменение размера изображения в виде массива байтов
- 9. Сохранение произвольного массива байтов в виде строки
- 10. Недостатки вложения ресурсов в двоичном виде в виде массива байтов?
- 11. Обрезать изображение из массива байтов
- 12. Отправка в виде массива байтов в jni часть android
- 13. отображение изображений, хранящихся в виде массива байтов в html-управлении
- 14. Преобразование массива байтов в png изображение
- 15. Хранение файла в виде байтового массива или потока в объекте?
- 16. Поделитесь изображением с использованием потока памяти или массива байтов
- 17. Загрузка изображения в виде массива байтов через WCF завершается
- 18. Преобразование необработанных пиксельных данных (в виде массива байтов) в BufferedImage
- 19. Хранить изображения на сервере в виде файлов или в базе данных в виде массива байтов
- 20. Преобразование массива байтов в изображение в C# после изменения массива
- 21. Возможно ли получить содержимое загруженной сборки .net в виде массива или потока байтов?
- 22. Преобразование массива байтов в изображение без FromStream (для Mono)
- 23. Упорно текст в виде массива байтов в плоский файл
- 24. GWT - получить изображение из массива байтов
- 25. Преобразование массива байтов в одно десятичное число в виде строки
- 26. ошибка при преобразовании массива байтов в изображение, после изменения массива байтов и массива байтов берется из самого изображения в C#
- 27. Play Framework скачать изображение из массива байтов
- 28. Как создать изображение из двухмерного массива байтов?
- 29. Как создать растровое изображение из массива байтов?
- 30. AngularJS - Показать содержимое массива байтов как изображение
Вы можете * написать * массив байтов в поток, но не преобразовать его в поток. Опубликуйте только один из тех «бесчисленных способов», которые вы пробовали. А также прочитайте [Ask] и возьмите [Tour] – Plutonix
@Plutonix System.IO.Stream stream = new MemoryStream(); stream.Write (данные, 0, data.Length); –
Возможный дубликат [Как преобразовать байты \ [\] в поток на C#?] (Http://stackoverflow.com/questions/4736155/how-do-i-convert-byte-to-stream-in-c) – Jason