Официальная брошюра Carl Zeiss по БОКЕ (eng)
Привожу пока только исходный документ.
Всё жутко интересно и подробно написано, но нужно читать, думать и переводить в первую очередь с английского (слава богу не немецкого в котором я не силён).
Скоро будет серия переводных статей по многим объективам Carl Zeiss! Ждите в ближайшее время! (мне нужно «переварить» большую брошюру про боке 🙂 )
оригинал брошюры Carl Zeiss по боке [download id=42]
Если увидите бредятину — поправляйте.
Здесь приведу только наиболее интересные отрывки, так как брошюра большая и подробная. Полный корректный перевод займет кучу времени.
Итак есть два понятия: « depth of field» и « depth of focus».
DOF или «depth of field» эквивалентна нашей ГРИП, т.е. Глубина резко отображаемого пространства (прим. ред: в частности объекта съемки). Зависит от диафрагмы и от расстояния до объекта. Базируется на допустимом степени размытия, которое мы принимаем как абсолютно резкую картинку, так как степень размытия все равно меняется постоянно.
А «depth of focus» это « глубина фокуса», величина, которая не зависит от фокусного расстояния, а только от значения диафрагмы. (примем.ред:В тексте буду её называть DOF1 кое-где). От неё зависят диски нерезкости.
рис.1
Забегая вперед: на картинке показано, как образуются диски нерезкости. Синие области это depth of focus. Желтая линия это поверхность сенсора. В случае, если световой конус фокусируется в точку за поверхностью сенсора, то он обрезается, формируя диски нерезкости. Если он полностью выйдет за синюю область — изображение будет «мыльным». Такое случается при неправильной калибровке камеры.
Каждая картинка формируется большим количеством световых лучей, которые проходят через отверстие диафрагмы и составляют собой картинку. Таким образом они формируют световой конус, областью которого является картинка диафрагмы видимая со стороны сенсора. Эта картинка диафрагмы называется выходной зрачок
Его легко увидеть, если посмотреть с задней стороны объектива, направив его на любую светлую поверхность.
выходной зрачок
Диафрагменное чисто F это отношение расстояния от поверхности картинки (прим.ред:так написано) до выходного зрачка к диаметру выходного зрачка
Открытая диафрагма означает обрезанный световой конус, а закрытая (зажатая) диафрагма даёт точечный световой конус.
Время от времени встречаются люди, которые считают, что величина depth of focus зависит от фокусного расстояния. Это не так, она зависит только от диафрагменного числа.
Широкоугольные объективы имеют очень короткий участок фокусировки, потому как они отображают все от самого ближнего плана до самого дальнего заднего плана в очень коротком пространстве изображений — их картинка плоская. Длиннофокусные объективы требуют бОльшего перемещения фокуса и поэтому картинка того же пространства объектов много глубже. (прим.ред: косноязычно сказал, потому привожу английский отрывок)
Short focal lengths only have a very short focus movement because they display everything from the near foreground to the distant background in a very short image space — their image is flat. Long focal lengths require a significantly larger focus movement because the image of the same object space is much deeper
z — диаметр диска нерезкости
k — диафрагменное число
Простейшее соотношение можно увидеть по нарисованным на объективе числам DOF. Поворотный угол фокусировочного кольца пропорционален обозначениям DOF и следовательно пропорционален диафрагменному числу F.
(прим.ред: в данном случае диафрагма стоит на F8. Объект на расстоянии 1,5м. Посмотрим цифру 8 на средней шкале и увидим, что DOF будет от где-то 0,8м до ~5м. Верхняя красная шкала это дистанция до снимаемого объекта в футах)
Если камера плохо откалибрована, то сенсор может оказаться полностью за depth of focus и тогда весь сюжет будет слегка «мыльным». Такое не случается с телеобъективами, в которых при неправильной калибровке камеры фокус всегда находится где-то в пределах depth of focus. Это ведет к неправильному представлению, что depth of focus у телеобъективов больше. Но это не так.
прим.ред: Хороший пример этого — объектив с макромехами. Легко получается именно такая ситуация — фокус уходит за поверхность сенсора из-за получаемого слишком малого фокусного.
В тоже время depth of field в области снимаемого объекта тоже практически не зависит от фокусного расстояния объектива, если мы будем сравнивать объекты в одинаковом масштабе. Для снимков объективами с разным фокусным расстоянием и одинаковым масштабом объекта это будет, конечно, означать как будто мы снимаем с разного расстояния.
На ближних дистанциях две фотографии снятые на объективы с разным фокусным расстоянием не будут одинаковыми, несмотря на одинаковый depth of focus. Перспектива и максимальное размытие заднего плана будет отличаться. Размытие будет меньше у короткофокусного объектива, нежели у объектива с большим фокусным расстоянием.
Далее в брошюре мы оторвёмся от процессов происходящих внутри камеры, где возникают диски нерезкости и будем рассматривать пространство перед линзами объектива.
Отзывчивые столбчатые диаграммы с Bokeh, Flask и Python 3 / Хабр
Недавно наткнулся в python digest на туториал по Flask+Bokeh. Туториал ориентирован на новичков, не требуется даже знать синтаксис Python и HTML. Примеры работают под Ubuntu 16.04, на Windows немного отличается работа с виртуальными окружениями.
Bokeh — это мощная библиотека с открытым исходным кодом, которая позволяет визуализировать данные для веб-приложений, не написав ни строчки на javascript. Изучение библиотек для визуализации вроде d3.js может оказаться полезным, но гораздо легче написать несколько строк кода на Python, чтобы решить задачу.
С Bokeh мы можем создавать поразительно детальные интерактивные визуализации или же более простые вещи, вроде столбчатых диаграмм.
Давайте разберёмся, как можно использовать Flask и Bokeh для визуализации данных в веб-приложении.
Всё, что описано далее, работает как на Python 2, так и на Python 3, однако, рекомендуется использовать Python 3 для новых приложений. Я использовал Python 3.6.1 на момент написания этой статьи. Помимо самого Python, нам потребуются следующие зависимости:
- Веб-фреймворк Flask, версия 0.12.2
- Библиотека визуализации данных Bokeh, версия 0.12.5
- Библиотека анализа данных pandas, версия 0.20.1
- pip и virtualenv поставляются вместе с Python 3. Они понадобятся, чтобы изолировать Flask, Bokeh и pandas от остальных проектов.
Если вам нужны дополнительные сведения по настройке окружения разработки, можете обратиться к руководству. Весь код примеров доступен по лицензии MIT на GitHub.
Создайте чистое виртуальное окружение для проекта. Как правило, я запускаю эту команду в отдельной папке venvs, где которой находятся все мои виртуальные окружения.
python3 -m venv barchart
Активируйте виртуальное окружение.
source barchart/bin/activate
После активации виртуального окружения изменится приглашение командной строки:
Не забывайте, что вам понадобится активировать виртуальное окружение в каждом новом окне терминала, из которого вы захотите запустить своё приложение.
Теперь можно установить Bokeh и Flask в созданное виртуальное окружение. Выполните эту команду, чтобы установить Bokeh и Flask подходящих версий.
pip install bokeh==0.12.5 flask==0.12.2 pandas==0.20.1
После загрузки и установки необходимые библиотеки будут доступны в виртуальном окружении. Проверьте вывод, чтобы удостовериться, что всё установилось.
Installing collected packages: six, requests, PyYAML, python-dateutil, MarkupSafe, Jinja2, numpy, tornado, bokeh, Werkzeug, itsdangerous, click, flask, pytz, pandas Running setup.py install for PyYAML ... done Running setup.py install for MarkupSafe ... done Running setup.py install for tornado ... done Running setup.py install for bokeh ... done Running setup.py install for itsdangerous ... done Successfully installed Jinja2-2.9.6 MarkupSafe-1.0 PyYAML-3.12 Werkzeug-0.12.2 bokeh-0.12.5 click-6.7 flask-0.12.2 itsdangerous-0.24 numpy-1.12.1 pandas-0.20.1 python-dateutil-2.6.0 pytz-2017.2 requests-2.14.2 six-1.10.0 tornado-4.5.1
Теперь мы можем перейти непосредственно к нашему приложению.
Мы напишем простое Flask-приложение и добавим столбчатую диаграмму на страницу. Создайте папку для своего прокта с файлом app.py
с таким содержанием:
from flask import Flask, render_template app = Flask(__name__) @app.route("/<int:bars_count>/") def chart(bars_count): if bars_count <= 0: bars_count = 1 return render_template("chart.html", bars_count=bars_count) if __name__ == "__main__": app.run(debug=True)
Это простое Flask-приложение, в котором есть функция chart
.
chart
принимает целое число, которое позже будет использоваться для определения количества данных для отрисовки. Функция render_template
внутри chart
будет использовать шаблонизатор Jinja2 для генерации HTML.
Последние 2 строки позволяют нам запустить приложение из консоли на 5000 порту в режиме отладки. Никогда не используйте режим отладки в продакшене, для этого существуют WSGI-серверы проде Gunicorn.
Создайте папку templates
внутри папки проекта. Внутри неё создайте файл chart.html
. Он нужен функции chart
из app.py
, поэтому без него приложение не будет работать правильно. Заполните chart.html
Jinja2-разметкой.
<!DOCTYPE html> <html> <head> <title>Bar charts with Bokeh!</title> </head> <body> <h2>Bugs found over the past {{ bars_count }} days</h2> </body> </html>
Заготовка chart.
будет показывать количество столбцов, переданное в функцию html
chart
через URL.
Сообщение внутри тега h2
отвечает теме нашего приложения. Мы будем строить график количества багов, найденных систимой автоматического тестирования за каждый день.
Теперь мы можем протестировать наше приложение.
Убедитесь, что виртуальное окружение всё ещё активно и вы находитесь в папке с app.py
. Запустите app.py
с помощью команды python
.
$(barchart) python app.py
Перейдите на localhost:5000/16/. Вы должны увидеть большое сообщение, которой меняется, когда вы меняете URL.
Наше приложение уже запускается, но пока не впечатляет. Пришло время добавить график.
Нам нужно всего лишь добавить немного кода, который будет использовать Bokeh. Откройте app.py
и добавьте в него строки сверху.
import random from bokeh.models import (HoverTool, FactorRange, Plot, LinearAxis, Grid, Range1d) from bokeh.models.glyphs import VBar from bokeh.plotting import figure from bokeh.charts import Bar from bokeh.embed import components from bokeh.models.sources import ColumnDataSource from flask import Flask, render_template
Остальная часть файла будет использовать Bokeh вместе с модулем random для генерации данных и столбчатой диаграммы.
Данные для диаграммы будут генерироваться заново при каждой перезагрузке страницы. В реальном приложении используйте более надёжный и полезный источник данных!
Продолжайте изменять app.py
. Код после импортов должен выглядеть следующим образом.
app = Flask(__name__) @app.route("/<int:bars_count>/") def chart(bars_count): if bars_count <= 0: bars_count = 1 data = {"days": [], "bugs": [], "costs": []} for i in range(1, bars_count + 1): data['days'].append(i) data['bugs'].append(random.randint(1,100)) data['costs'].append(random.uniform(1.00, 1000.00)) hover = create_hover_tool() plot = create_bar_chart(data, "Bugs found per day", "days", "bugs", hover) script, div = components(plot) return render_template("chart.html", bars_count=bars_count, the_div=div, the_script=script)
Функция chart
сгенерирует списки с данными с помощью встроенного модуля random. chart
вызывает 2 функции: create_hover_tool
и create_bar_chart
. Мы пока не написали эти функции, поэтому продолжим добавлять код после функции chart
:
def create_hover_tool(): # эту функцию мы напишем чуть позже return None def create_bar_chart(data, title, x_name, y_name, hover_tool=None, width=1200, height=300): """Создаёт столбчатую диаграмму. Принимает данные в виде словаря, подпись для графика, названия осей и шаблон подсказки при наведении. """ source = ColumnDataSource(data) xdr = FactorRange(factors=data[x_name]) ydr = Range1d(start=0,end=max(data[y_name])*1.5) tools = [] if hover_tool: tools = [hover_tool,] plot = figure(title=title, x_range=xdr, y_range=ydr, plot_width=width, plot_height=height, h_symmetry=False, v_symmetry=False, min_border=0, toolbar_location="above", tools=tools, responsive=True, outline_line_color="#666666") glyph = VBar(x=x_name, top=y_name, bottom=0, width=.8, fill_color="#e12127") plot.add_glyph(source, glyph) xaxis = LinearAxis() yaxis = LinearAxis() plot.add_layout(Grid(dimension=0, ticker=xaxis.ticker)) plot.add_layout(Grid(dimension=1, ticker=yaxis.ticker)) plot.toolbar.logo = None plot.min_border_top = 0 plot.xgrid.grid_line_color = None plot.ygrid.grid_line_color = "#999999" plot.yaxis.axis_label = "Bugs found" plot.ygrid.grid_line_alpha = 0.1 plot.xaxis.axis_label = "Days after app deployment" plot.xaxis.major_label_orientation = 1 return plot
Здесь много кода, с которым нужно разобраться. Функция create_hover_tool
пока только возвращает None, потому что пока нам не нужно отображать подсказки при наведении.
Внутри функции create_bar_chart
мы преобразуем сгенерированные данные в объект типа ColumnDataSource
, который мы можем передать на вход функциям Bokeh для построения графика. Мы задаём диапазоны осей x и y.
Пока у нас не настроены подсказки при наведении, список tools
пуст. Вся магия происходит в вызове функции figure
. Мы передаём ей всё необходимое для построения графика: размер, панель инструментов, границы, настройки поведения графика при изменении размера окна браузера.
Мы создаём вертикальные столбцы с помощью класса VBar
и добавляем их на график с помощью функции add_glyph
, которая задаёт правила, по которым данные превращаются в столбцы.
Последние 2 строки изменяют оформление графика. Для примера я убрал логотип Bokeh при помощи
и добавил подписи к обеим осям. Я рекомендую держать документацию bokeh.plotting перед глазами, чтобы знать, как можно кастомизировать визуализацию.
Нам нужно сделать всего пару изменений в файле templates/chart.html
, чтобы отобразить график. Откройте файл и замените его содержимое следующим.
<!DOCTYPE html> <html> <head> <title>Bar charts with Bokeh!</title> <link href="http://cdn.pydata.org/bokeh/release/bokeh-0.12.5.min.css" rel="stylesheet"> <link href="http://cdn.pydata.org/bokeh/release/bokeh-widgets-0.12.0.min.css" rel="stylesheet"> </head> <body> <h2>Bugs found over the past {{ bars_count }} days</h2> {{ the_div|safe }} <script src="http://cdn.pydata.org/bokeh/release/bokeh-0.12.5.min.js"></script> <script src="http://cdn.pydata.org/bokeh/release/bokeh-widgets-0.12.5.min.js"></script> {{ the_script|safe }} </body> </html>
2 из 6 добавленных строк нужны для загрузки CSS-файлов Bokeh, ещё 2 для загрузки его скриптов, и ещё 2 — для генерации графика.
Всё готово, давайте проверим наше приложение. Flask должен автоматически перезгрузить приложение, когда вы сохраните изменения в app.py
. Если вы остановили веб-сервер, вы можете снова его запустить командой python app.py
.
Откройте в браузере localhost:5000/4/
Выглядит немного пусто, но мы можем изменить количество столбцов на 16, если перейдём на /localhost:5000/16/
Ещё в 4 раза больше. ..
Выглядит довольно неплохо. Но что, если мы добавим подсказки при наведении, чтобы можно было подробно изучить каждый столбец? Для этого изменим функцию create_hover_tool
.
Внутри app.py
измените функцию create_hover_tool
def create_hover_tool(): """Generates the HTML for the Bokeh's hover data tool on our graph.""" hover_html = """ <div> <span>$x</span> </div> <div> <span>@bugs bugs</span> </div> <div> <span>$@costs{0.00}</span> </div> """ return HoverTool(tooltips=hover_html)
Встраивание HTML в приложение на Python может показаться довольно странным, но именно так мы определяем вид подсказки. Мы используем $x
, чтобы показать x-координату столбца, @bugs
, чтобы показать поле «bugs» источника данных и $@costs{0.00}
, чтобы показать поле «costs» как числ с 2 знаками после запятой.
Убедитесь, что вы заменили return None
на return HoverTool(tooltips=hover_html)
.
Вернитесь в браузер и перезагрузить страницу localhost:5000/128/
Отличная работа! Попробуйте поиграть с количеством столбцов в URL и посмотрите как график будет выглядеть.
График выглядит заполненным примерно при 100 столбцах, но вы можете попробовать задать любое значение. На 50,000 получается грустная картина:
Да уж, похоже, нам нужно сделать ещё что-то, чтобы можно было отображать больше пары сотен столбцов за раз.
Мы создали отличный график на Bokeh. Далее вы можете изменить цветовую схему, подключить другой источник данных, попробовать другие типы графиков или придумать, как отображать огромные объёмы данных.
С помощью Bokeh можно делать гораздо больше, так что стоит посмотреть официальную документацию, репозиторий на GitHub, страничку Bokeh на Full Stack Python.
Определениев кембриджском словаре английского языка
Примеры боке
боке
Я хотел как боке , чтобы выдвинуть гиннесс подальше от фона, но при этом выглядеть живо.
От Гизмодо
Большинство потребительских видеокамер имеют довольно уродливые полигональные боке , пока вы не достигнете ценовой отметки в 1000 долларов или около того.
Из CNET
Плитки на заднем плане боке достаточно четкие, чтобы зритель мог их различить, а нажатие на них смещает фокус, открывая сообщение.
Из Атлантики
Это также позволяет получить боке , те искусные размытые круги, которые вы увидите на фотографиях с большой глубиной резкости.
Из Лос-Анджелес Таймс
Опять же, не боке , а лучший обзор возможностей системы с двумя камерами, с меньшей передержкой и чрезмерной резкостью.
С грани
У нас также нет возможности увидеть знаменитое боке (произносится бох-кай) в действии.
С грани
Этот оказался лучшим с хорошей боке на заднем плане и глубокие насыщенные цвета.
От Гизмодо
Объектив также оснащен девятилепестковой диафрагмой для плавного боке и высокоскоростным листовым затвором, который позволяет использовать вспышку с максимальной выдержкой 1/4000.
От Арс Техника
Боке Глубина резкости имитирует функцию глубокой фокусировки настоящих объективов камер высокого класса, а данные об отражении создают зеркальные изображения, которые смещаются в реальном времени в зависимости от угла камеры и освещения.
Из ВРЕМЕНИ
Эти примеры взяты из корпусов и источников в Интернете. Любые мнения в примерах не отражают мнение редакторов Кембриджского словаря, издательства Кембриджского университета или его лицензиаров.
Переводы bokeh
на китайский (традиционный)
(攝影)背景散焦效果…
См. больше
на китайском (упрощенном)
(摄影)背景散焦效果…
Узнать больше
Нужен переводчик?
Получите быстрый бесплатный перевод!
Как произносится боке ?
Просмотр
шумный
бурно
бок чой
бок Чой
боке
БОЛ
жирный
жирный шрифт
полужирный
Проверьте свой словарный запас с помощью наших веселых викторин по картинкам
- {{randomImageQuizHook.
copyright1}}
- {{randomImageQuizHook.copyright2}}
Авторы изображений
Пройди тест сейчас
Слово дня
азбука Морзе
Соединенное Королевство
Ваш браузер не поддерживает аудио HTML5
/ˌmɔːs ˈkəʊd/
НАС
Ваш браузер не поддерживает аудио HTML5
/ˌmɔːrs ˈkoʊd/
система, используемая для отправки сообщений, в которой буквы и цифры представлены короткими и длинными знаками, звуками или вспышками света
Об этом
Блог
Скупиться и тратить деньги (Глаголы для траты денег)
Подробнее
New Words
тройной
В список добавлено больше новых слов
Наверх
Contents
EnglishExamplesTranslations
bokeh — Викисловарь
Contents
- 1 английский
- 1.1 Этимология
- 1.2 Произношение
- 1.3 Существительное
- 1.3.1 Переводы
- 1.4 Каталожные номера
- 1.5 Дополнительная литература
- 2 Венгерский
- 2.1 Этимология
- 2.2 Произношение
- 2.3 Существительное
- 2.3.1 Склонение
- 3 Индонезийский
- 3.1 Этимология
- 3.2 Произношение
- 3.
3 Существительное
- 3.4 Дополнительная литература
English[edit]
WOTD – 3 November 2017
Etymology[edit]
An example of bokeh
From Japanese 暈け (boke, “blur”), the nominalized form of 暈ける (бокэру, «размыть ( непереходное )»).
Терминал -h , отсутствующий в латинизации boke , является руководством по произношению, поэтому он не произносится как /boʊk/, как это было бы в стандартной английской орфографии. Контраст каратэ и караоке , претерпевшие звуковые изменения.
Этот термин используется по крайней мере с 1996 года. bo как в кости и ke как в Kenneth, с одинаковым ударением на любом слоге». [2]
Произношение[править]
- (США, Австралия) IPA (ключ) : /ˈboʊ.kə/
Аудио (AU) (файл)
- Дефис: bo‧keh
Существительное
- (фотография) Субъективное эстетическое качество областей вне фокуса изображения, проецируемого объективом камеры.
2010 , Шарлотта К. Лоури, «Изучение объективов и аксессуаров Canon», в Canon EOS Rebel T2i/550D Digital Field Guide , Индианаполис, штат Индиана: Wiley Publishing, → ISBN , стр. 186:
Качество области вне фокуса на широкоапертурном изображении называется боке , первоначально от японского слова боке , произносится бо-кех, что означает нечеткий. В фотографии боке отражает форму и количество лепестков диафрагмы в объективе, что частично определяет способ отображения на изображении точек света, находящихся не в фокусе. Боке также является результатом сферической аберрации, влияющей на сбор света. Хотя это вызывает споры, фотографы часто оценивают боке как хорошее или плохое. Хорошее боке визуализирует области не в фокусе как гладкие, однородные и, как правило, круглые формы с приятно размытыми краями. Плохое боке , с другой стороны, визуализирует области не в фокусе с многоугольными формами, резкими краями и с освещением, которое создает более яркую область за пределами формы диска.
2014 , Боб Дэвис; Дон Дэвис, «Поклонники «Блэкхокс»: предыстория, позирование, освещение и выбор объектива, коллеги», в Мы помолвлены !: Фотосъемка ярких и радостных портретов счастливой пары , Буффало, Нью-Йорк: Amherst Media, → ISBN , стр. 102–103:
При съемке с естественным освещением я использовал длиннофокусный объектив (200 мм), чтобы сжать пространство и слегка размыть фон, фотографируя с большой открытой диафрагмой (f/2,5). В результате получилась великолепная боке , превращая город в размытие, сохраняя при этом резкость пары.
2014 , Криста Смит, «Что вам нужно», в Правильный свет: фотографирование детей и семей с использованием естественного света , Буффало, Нью-Йорк: Amherst Media, → ISBN , стр. 13:
- 7 Еще дорогие объективы обычно имеют диафрагму f/2.
8, что позволяет снимать с более короткой выдержкой и получать великолепное сливочное боке на заднем плане.
Переводы[править]
субъективное эстетическое качество нерезких областей изображения
Further reading[edit]Hungarian[edit]Hungarian Wikipedia has an article on: bokeh Wikipedia hu Etymology[edit ]С японского 暈け (боке, «размытие»), через английский боке . ПроизношениеСуществительное
Склонение[править]
Индонезийский [править]Этимология [Редактировать] Из английского Bokeh , от японской 暈け (Boke, «Blur»), номинализованная форма 暈け (Boke, «Blur»), номинализованная форма 暈け (Boke, «Blur»), номинализованная форма 暈け (Boke, «Blur»). Bokeh перевод: Перевод слова “BOKEH” с английского на русский, как перевести Пролистать наверх
|