|
0 / 0 / 0
Регистрация: 27.03.2016
Сообщений: 52
|
|||||||||||
OpenCV и большие изображения15.10.2023, 21:30. Показов 24907. Ответов 30
OpenCV и большие изображения
Здравствуйте. Столкнулся проблемой на opencv. Версия последняя на данный момент. 4.8.1. Пытаюсь создать и потом сохранить в tiff изображение разрешением 22000х22000 в разрядность. 48 бит. Ну то есть цветное 16 бит на канал.
Сохраняю так
Если работать с изображением размером 15000x15000, то всё нормально и оно создаётся. И сохраняется. Предполагаю, что эта ерунда происходит если размер файла будет превышать 2Гб. Но, это не есть хорошо. Как это побороть?
0
|
|||||||||||
| 15.10.2023, 21:30 | |
|
Ответы с готовыми решениями:
30
OpenCV: получить гистограммы каналов для области изображения Изменение параметров изображения в зависимости от положения ползунка (Opencv) |
|
0 / 0 / 0
Регистрация: 27.03.2016
Сообщений: 52
|
|
| 23.10.2023, 12:36 [ТС] | |
|
Вы попробуйте сохранить без сжатия.
TIL_CV_Set_Pixel_48_Bit_Long_RGB - это моя функция. Я ей и записываю попиксельно данные в изображение с индексом Img_IDX. И да у меня 16 бит на канала. То есть изображение 48-битное.
0
|
|
|
323 / 190 / 45
Регистрация: 25.08.2011
Сообщений: 1,263
|
|||
| 23.10.2023, 12:38 | |||
|
0
|
|||
|
0 / 0 / 0
Регистрация: 27.03.2016
Сообщений: 52
|
|
| 23.10.2023, 12:50 [ТС] | |
|
Это не верно. Даже без шапки и тэгов мы имеем 32000*32000*6= 6144000000. То есть более 6 Гб.
Лонги передаю на всякий случай. Даже не лонги, а лонг лонги. Добавлено через 7 минут И лонги это индексы, а не значения пикселов.
0
|
|
|
323 / 190 / 45
Регистрация: 25.08.2011
Сообщений: 1,263
|
|||
| 23.10.2023, 13:11 | |||
|
В общем представленный код нормально работает. Все программы его понимают, размер также получается более 2гб.
0
|
|||
|
0 / 0 / 0
Регистрация: 27.03.2016
Сообщений: 52
|
|
| 23.10.2023, 13:26 [ТС] | |
|
А что тут такого незамечательного? Если смещение внутри файла будет больше 4 Гб, то передавать просто лонг уже не выйдет. Нужно передавать long long. Или по правильному,- Int64.
Не очень понятно, как вы сохранили через OpenCV tif файл размером 6 Гб да ещё он при этом был читаем?
0
|
|
|
323 / 190 / 45
Регистрация: 25.08.2011
Сообщений: 1,263
|
||
| 23.10.2023, 13:28 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 27.03.2016
Сообщений: 52
|
|
| 23.10.2023, 14:03 [ТС] | |
|
Так вот сохраните 32000х32000х48 бит файл без сжатия и посмотрите на результат.
0
|
|
|
323 / 190 / 45
Регистрация: 25.08.2011
Сообщений: 1,263
|
||
| 23.10.2023, 14:42 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 27.03.2016
Сообщений: 52
|
|
| 23.10.2023, 17:02 [ТС] | |
|
Да и не думаю издеваться. Сохранить корректно не выйдет. При чём OpenCV даже не предупредит, что превышен лимит для tiff. А, вот в opencv есть поддержка bigtiff, или её там до сих пор нет?
0
|
|
|
323 / 190 / 45
Регистрация: 25.08.2011
Сообщений: 1,263
|
|
| 23.10.2023, 20:02 | |
|
Ну может и баг.. напишите в службу поддержки. В следующем релизе учту.
А про бигтиф почитайте мануалы. Но скорее всего придется пересобрать либу. Но это то ещё удовольствие.
0
|
|
|
0 / 0 / 0
Регистрация: 27.03.2016
Сообщений: 52
|
|
| 23.10.2023, 20:20 [ТС] | |
|
Похоже, что удалось побороть лимит в 2 Гб. Объявил все индексные переменные как long long и при экспорте в RAD, как Int64. То есть можно получить tif файл размером до 4 гб. На счёт bigtif поэтому и спросил, может он уже есть в Opencv. Тем более использую самую последнюю версию. Пересобирать это да. То ещё удовольствие. Я как-то помню собирал для х86 версию 3.4.1 opencv. В сборке были готовыми только х64 dll.
0
|
|
| 23.10.2023, 20:20 | |
|
Помогаю со студенческими работами здесь
31
OpenCv. Получить зеркальное отображение изображения, используя функции: CvScalar, CvGet2D, CvSet2D Большие изображения на S3 OpenCV склеить изображения OpenCV открытие изображения Массив изображения opencv Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром.
возможно получится прикрутить интерпретатор питон для кастомизации игровой логики.
что есть на текущий момент:. . .
|
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2.
Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
|
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
|
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2.
Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
|
|
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2.
Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом.
В. . .
|
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2.
Задача: отобразить спецтехнику, которая на данный момент находится в ремонте.
Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
|
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
|
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
|