LINUX.ORG.RU

Округление чисел (для реальных процессов)

 , , , ,


0

4

Хочу познакомить местный народ со своим методом округления чисел.

Я его разработал в давние времена, когда изучал и разрабатывал всякие методы обработки аудио и видео информации перед поступлением в институт.

Суть округления в том, что точка отсчёта для округления плавает в зависимости от соотношения к числам к которым нужно округлять.

Для понимания простая формулировка:

Если X - число которое нужно округлить, а Y и Y1 - числа между которыми стоит число X, причём Y<Y1 (по модулю), то правило будет примерно таким:

Если Y/X < X/Y1 (по модулю) - округлять в сторону Y1, если наоборот, то в сторону Y.

Но тут есть пару нюансов конечно. Например условие Y/X = X/Y1, в этом случае предлагаю применить дополнение из системы классического округления (в большую сторону). А вот когда выбор округления между нолём и другим числом, тут как обычно выползает неадекватная ерунда (я тут пока не особо точные методы придумал)

Что хочу узнать. Есть ли подобные разработки, их применение где-то и решены ли вопросы с нолём.



Последнее исправление: Serg_HIS (всего исправлений: 3)

Ответ на: комментарий от Serg_HIS

Где конкретно прорехи?

Везде. Ты лучше укажи то место, где их нет.

Внятного описания нет. Вместо конкретной формулы предполагается выводить из твоих соображений самим. Ситуация со значениями возле нуля не решена никак, так что это явно не использовалось вообще нигде. Критериев «реальности» нет, никаких метрик нет. Что ты там вообще решаешь, что оптимизируешь? Да ничего.

Это просто дамп из мозга в духе: «вот тут меня гениальная идея, смотрите, какой я молодец».

Ты видать не удосужился просто понять/прочитать смысл метода и для чего его применять

А ты что, удосужился написать?

Знаешь про «испанский стыд»? Вот позоришься ты, а стыдно за тебя мне.

i-rinat ★★★★★
()
Ответ на: комментарий от Serg_HIS

Слава Напильника покоя не даёт? Не рекомендую идти этим путём.

i-rinat ★★★★★
()
Ответ на: комментарий от Serg_HIS

Оно не удобно к восприятию. Вообще идея у тебя не самая плохая, но это только идея, до нормального алгоритма её надо довести. Можешь гуглить в сторону линейной интерполяции и логарифмической, у тебя что-то в этом духе но не доделано до конца, т.к. сдувается от некоторых ситуаций, вроде 0.

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 1)
Ответ на: комментарий от peregrine

Напрягай мозг. Кто сказал что наука - это просто?

Тролить безграмотно в стиле выше тролящего - легко.

Напрягать мозг - трудно. Да.

Serg_HIS
() автор топика
Ответ на: комментарий от peregrine

Вообще идея у тебя не самая плохая

Спасибо.

Но в принципе это не идея, а моя теория, которой дофига лет. С нолём (единственный к стати недостаток) есть два варианта решения, которые я тоже описал в треде. Какой из вариантов применять - зависит от задачи.

Да согласен - эти задачи где какой метод применять с нолём - моя задача.

Serg_HIS
() автор топика
Ответ на: комментарий от Serg_HIS

Так это тебе нужно мозг напрягать. Я уже двое суток мозг напрягаю с перерывами по 4 часа на сон. Только сейчас решил отдохнуть, отвлечься и вылез на ЛОР на пару часиков, может хоть посплю часов 6 после этого. А скоро опять отправлюсь пахать как раб на галерах, до понедельника надо много всего успеть сделать.

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 2)
Ответ на: комментарий от peregrine

Мне после новогодних праздников стало скучно и я решил поделиться одной из самых простых моих разработок в алгоритмах.

Serg_HIS
() автор топика
Ответ на: комментарий от Serg_HIS

Программу пишу, точнее прототип. Из-за требований к новым библиотекам пришлось ОС обновлять на ноуте, при попытке обновить kubuntu 14.04 до 16.04 с кучей сторонних реп и огромным количеством софта для разработки вылезло столько проблем, что оказалось проще переустановить и восстановить конфиги из buckup-а. Однако легче не стало, т.к. обновлять надо было до 17.10, а там сделали багованную GUI для установки дров nvidia. Она отписала что всё успешно, надо перезагружаться, а по факту dkms не собрался, в результате без nomodest даже в консольку залогиниться не мог. А я уже даже забыл, как при таймауте в 0 попасть в grub, т.к. 1.5 года у меня ничего не лагало и не глючило, так что тоже время и нервы, хотя я мог заниматься своими делами, а к этому между делом подходить, но на всю возню с ноутом ушло 36 часов (пока 200 Гб файлов в забэкапятся, пока разделы подвинутся, пока ОС установится, пока апдейты скачаются), что очень много, раньше никогда столько не возился, сейчас возни было больше, чем когда я сервер для небольшого сайтика делал, может дело в том что я давно не админил ничего, может просто слишком много всего использую. Попутно на компе дома программировал, но там сейчас не так удобно работать, да и на ноуте я точно смогу прототип показать, а на работе придется систему долго настраивать, чтобы там всё работало, один фиг прототип с питона придется на другие языки переписывать.

peregrine ★★★★★
()
Ответ на: комментарий от peregrine

Думаю тебе по этому варианту описания нужно в толксах тред сварганить :). Будет туча коментов.

Serg_HIS
() автор топика
Ответ на: комментарий от Serg_HIS

в чем там суть?
непосредственно по округлению ничего нового, уже ж валом такого.

Если X - число которое нужно округлить, а Y и Y1 - числа между которыми стоит число X

если читать в таком виде — то это ж не «округление» ни разу. если рассматривается ряд чисел — то коммент почитать про интерполяцию и сплайны как раз про это и есть.

VladimirMalyk ★★★★★
()
Ответ на: комментарий от Serg_HIS

Кстати, рассуждая на тему алгоритмов масштабирования изображений, мне пришла такая мысль: ведь на ЭЛТ мониторе, в котором есть сетка пикселей (а в случае тринитронов точно такая же) как и в цифровом представлении, изображение масштабируется из меню монитора без каких-либо артефактов, присущих известным алгоритмам ресемплинга; вроде рингинга, алиасинга, замыливания и другим. Так почему бы не придумать такой алгоритм, который будет симулировать отклоняющую систему ЭЛТ и апертурную решетку на какой-нибудь CUDA или OpenCL, для качественного масштабирования изображений «в архив»? Возможно, это станет реальным и в реал-тайме.

Moderators ★★
()
Ответ на: комментарий от Moderators

Не поверишь, у меня есть алгоритм сверхбыстрого масштабирования изображений с весьма хорошим качеством (сравним с бикубическим).

Разработал около 23 лет назад теоретически, сделал реализацию около 15 лет назад реально.

Serg_HIS
() автор топика
Ответ на: комментарий от VladimirMalyk

готовых способов итерполяции валом

К сати изучи в начале, что такое интерполяция.

Serg_HIS
() автор топика
Ответ на: комментарий от Serg_HIS

Да! «Прочитай» - пишется вместе (это я для себя ;)

Serg_HIS
() автор топика
Ответ на: комментарий от Moderators

И да, я одной конторе подарил свою либу по масштабированию изображений и они её применяют уже более 10 лет. Сейчас у меня более качественный вариант в разработке для личных применений.

Serg_HIS
() автор топика
Ответ на: комментарий от Serg_HIS

И да, я одной конторе подарил свою либу по масштабированию изображений и они её применяют уже более 10 лет. Сейчас у меня более качественный вариант в разработке для личных применений.

А симуляция ЭЛТ, которую я описал, тебе как?

Moderators ★★
()
Ответ на: комментарий от Moderators

А симуляция ЭЛТ, которую я описал, тебе как?

Интересно к стати, но всёравно интерполяцию делать нужно.

У тебя есть мысли по этому поводу?

Serg_HIS
() автор топика
Ответ на: комментарий от Serg_HIS

У тебя есть мысли по этому поводу?

Допустим, есть ЭЛТ, на котором демонстрируется наше изображение в масштабе 1:1, и попадает точно в свои люминофоры в матрице (что на ЭЛТ нереально), для чего рассчитывается модель отклоняющей системы развертки для пучка электронов. Для масштабирования эти вектора изменяются с расчетом физики (PhysX?) под стать отклоняющей системе, что происходит и на ЭЛТ, определяется, на какие люминофоры теперь попадает развертка, и собственно, вывод.

Moderators ★★
()
Ответ на: комментарий от Serg_HIS

А как именно?

Пучок электронов в количестве 3 шт. всегда имеет одинаковое расстояние между компонентами, и при прохождении через решетку, рассчитанную под это расстояние, исключается смешение компонентов на цветах люминофора.

Moderators ★★
()
Ответ на: комментарий от Moderators

У меня тут есть пару всёнезнающих тролей на примете, знающих как работает всё на свете.

Позвать этих упоротых? может помогут? ;)

Serg_HIS
() автор топика
Ответ на: комментарий от Moderators

Так информация же об этом в открытом доступе

Что тебе мешает сделать на основе этой информации то что ты спросил?

Serg_HIS
() автор топика
Ответ на: комментарий от Moderators

Кольцами сведения? Или что ты имеешь ввиду?

Что конкретн ты хочешь сделать и отталкивась от чего приводи. Будем разбиратся.

Serg_HIS
() автор топика
Ответ на: комментарий от Serg_HIS

Что конкретн ты хочешь сделать и отталкивась от чего приводи. Будем разбиратся.

Алгоритм масштабирования, отталкиваясь от физической симуляции работы ЭЛТ-монитора

Moderators ★★
()
Ответ на: комментарий от Moderators

А что я спросил?

Ну если ты не понял сам себя, я попробую рассказать:

Ты спросил как сделать цифровую аналогию масштабирования изображения из ЭЛТ в куда угодно.

Правильно?

Serg_HIS
() автор топика
Ответ на: комментарий от Serg_HIS

Ты спросил как сделать цифровую аналогию масштабирования изображения из ЭЛТ в куда угодно.

А, так ты из программистских соображений. Так я не программист же))

Moderators ★★
()
Ответ на: комментарий от Serg_HIS

Ну тоже вариант...

Но наставник разработки программы просмотра картинок с sinc и waifu2x за 3 пива)) Все еще единственная в мире!

Moderators ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.