From bc36a1e9d0cfda4f00e9368044c68d1c3adedfd9 Mon Sep 17 00:00:00 2001 From: Julian Stirling Date: Sun, 1 Mar 2026 11:45:29 +0000 Subject: [PATCH] Create a developer guidance section for the hosted docs --- .codespellrc | 5 +- apidocs/dev/README.md | 9 + apidocs/dev/_sidebar.md | 9 + apidocs/dev/architecture.md | 11 + apidocs/dev/assets/ChiefRayAngle.png | Bin 0 -> 96857 bytes apidocs/dev/assets/GreenEqualisation.png | Bin 0 -> 111804 bytes apidocs/dev/assets/SoftwareDiagram.svg | 2299 +++++++++++++++++ apidocs/dev/index.html | 43 + apidocs/dev/ofm.css | 1002 +++++++ apidocs/dev/picamera-tuning-files.md | 188 ++ apidocs/index.html | 2 + docs/images/ChiefRayAngle.png | 3 - docs/images/GreenEqualisation.png | 3 - .../things/camera/tuning_files/vc4/README.md | 184 +- 14 files changed, 3569 insertions(+), 189 deletions(-) create mode 100644 apidocs/dev/README.md create mode 100644 apidocs/dev/_sidebar.md create mode 100644 apidocs/dev/architecture.md create mode 100644 apidocs/dev/assets/ChiefRayAngle.png create mode 100644 apidocs/dev/assets/GreenEqualisation.png create mode 100644 apidocs/dev/assets/SoftwareDiagram.svg create mode 100644 apidocs/dev/index.html create mode 100644 apidocs/dev/ofm.css create mode 100644 apidocs/dev/picamera-tuning-files.md delete mode 100644 docs/images/ChiefRayAngle.png delete mode 100644 docs/images/GreenEqualisation.png diff --git a/.codespellrc b/.codespellrc index 84f6269c..73d461c1 100644 --- a/.codespellrc +++ b/.codespellrc @@ -7,7 +7,10 @@ skip = node_modules, __pycache__, ./build, ./dist, - ./apidocs, + ./apidocs/*.html, + ./apidocs/*.js, + ./apidocs/*.json, + ./apidocs/*.css, ./openflexure, ./htmlcov, ./src/openflexure_microscope_server/static, diff --git a/apidocs/dev/README.md b/apidocs/dev/README.md new file mode 100644 index 00000000..3498be6a --- /dev/null +++ b/apidocs/dev/README.md @@ -0,0 +1,9 @@ +# Developer Guidance + +This site provides information that is useful for developing the OpenFlexure Microscope. + +### Viewing and Modifying Locally + +If you want to view these documents in your machine (very useful when editing them). You will need to serve the `apidocs` directory. Navigate to the `apidocs` directory and run `python -m http.server`. + +All developer guidance documentation is written in markdown and then displayed with Docsify. More information on Docsify can be found at https://docsify.js.org. \ No newline at end of file diff --git a/apidocs/dev/_sidebar.md b/apidocs/dev/_sidebar.md new file mode 100644 index 00000000..df1ea285 --- /dev/null +++ b/apidocs/dev/_sidebar.md @@ -0,0 +1,9 @@ +

Developer Documentation Index

+

Python API

+

HTTP API

+ +

Developer Guidance

+ +- [Home](README) +- [Software Architecture](architecture.md) +- [PiCamera Tuning Files](picamera-tuning-files.md) \ No newline at end of file diff --git a/apidocs/dev/architecture.md b/apidocs/dev/architecture.md new file mode 100644 index 00000000..b1e2c6cd --- /dev/null +++ b/apidocs/dev/architecture.md @@ -0,0 +1,11 @@ +# Software Architecture + +## Overview + +The OpenFlexure Microscope Server is a FastAPI server created using Labthings FastAPI. The user interfaces is a Vue.js web app. And thehe server runs on a customised operating system (Raspbian OpenFlexure). + +Here is a high level diagaram of the overall software architecture: + + + +Each repository link should be clickable. The architecture diagram is best viewed in its own tab. diff --git a/apidocs/dev/assets/ChiefRayAngle.png b/apidocs/dev/assets/ChiefRayAngle.png new file mode 100644 index 0000000000000000000000000000000000000000..564323188498e77becae93933c06925f2bb897c7 GIT binary patch literal 96857 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 KT-G@yGywoY)pb1p literal 0 HcmV?d00001 diff --git a/apidocs/dev/assets/GreenEqualisation.png b/apidocs/dev/assets/GreenEqualisation.png new file mode 100644 index 0000000000000000000000000000000000000000..a0e32735b929892c1431b9321d7671fed6e98cfd GIT binary patch literal 111804 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 E0JDMaQUCw| literal 0 HcmV?d00001 diff --git a/apidocs/dev/assets/SoftwareDiagram.svg b/apidocs/dev/assets/SoftwareDiagram.svg new file mode 100644 index 00000000..0390fdfa --- /dev/null +++ b/apidocs/dev/assets/SoftwareDiagram.svg @@ -0,0 +1,2299 @@ + + + +Other "Things"...Others things, can be installed defined in any installed python package, and included in the config. As of yet there is no way to define a UIThingsExcept for during start up all functionality is defined either within "Things" or in code called by Things. + +Things communicate with each other via thing_slots.1Uvicorn, +An Async Sever Gateway Interface (ASGI) web serverThingsOther custom utilities/librariessystemd service on Raspberry Pi +All python runs in "ofm" virtual environment2OpenFlexure Connect (Electron app) +[or browser]Web App written in Vue.jsCreated by (and served from) the server. Viewed in browser or OpenFlexure Connect1Python code +1LabThings-FastAPI Clientlabthings-fastapi.client. +ThingClientLabThings with automatically make a "ThingClient" class that communicates over HTTP and provides methods for calling all actions and reading properties of any "Thing" running on the server.User's ComputerLocal terminal$ ssh microscope.localv3 Software ArchitecturesshASGIThe systemd service is run on startup. It is managed by systemctl Things add API endpoints to the FastAPI server for communication. +(see add_to_fastapi) Things generate a Thing Description that describe their functionality and data and the HTTP endpoints.HTTPHTTP1OpenFlexure Microscope +ServerThing Descriptionslabthings-fastapi.server. +ThingServerFastAPIsever.app:FastAPILabThings-FastAPI Server11212 + + openflexure +microscope + + Raspbian OpenFlexureThings, are WC3 Web Of Things compliant Python Objects used to add functionality (such as hardware control) with HTTP API endpointsThe server makes use of a number of other python libraries. Some are standard libraries such as NumPy, Pillow, SciPy, etc. Others are specific to OpenFlexureA customised Raspberry Pi operating system, for the embedded Raspberry Pi in the Microscope3OpenFlexure Stitching5For stitching images togetherPlan to remove this in favour of bringing these methods into the microscope where they can be tested.Camera stage mapping8For analysing images to calibrate stage movementMicat7 +For analysing images for optical system calibration1github.com/labthings/labthings-fastapi1gitlab.com/openflexure/openflexure-microscope-server2gitlab.com/openflexure/openflexure-connect3gitlab.com/openflexure/raspberry-pi-os-image-customiser4gitlab.com/openflexure/openflexure-microscope-cli6gitlab.com/bath_open_instrumentation_group/pysangaboard7 +gitlab.com/openflexure/micat5gitlab.com/openflexure/openflexure-stitching8gitlab.com/openflexure/microscope-extensions/camera-stage-mappingRepository URLsPySangaboard6Motor controlPlan to move these scripts into the OS repo.OpenFlexure Microscope CLI +4$ ofm start$ ofm stop$ ofm status$ ofm activate$ ofm logMost commands are a wrapper around systemctlActivates the ofm python environment diff --git a/apidocs/dev/index.html b/apidocs/dev/index.html new file mode 100644 index 00000000..c1e3e1e5 --- /dev/null +++ b/apidocs/dev/index.html @@ -0,0 +1,43 @@ + + + + + + + + OpenFlexure Microscope Server Developer Guidance + + + + + + + +
+ + + + + + + + + diff --git a/apidocs/dev/ofm.css b/apidocs/dev/ofm.css new file mode 100644 index 00000000..f3a7abae --- /dev/null +++ b/apidocs/dev/ofm.css @@ -0,0 +1,1002 @@ +/* This is a theme modified from the vue.css Docsify Theme*/ +@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600&display=swap"); + +@import url("https://fonts.googleapis.com/css?family=Roboto+Mono|Source+Sans+Pro:300,400,600"); + +* { + -webkit-font-smoothing: antialiased; + -webkit-overflow-scrolling: touch; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + -webkit-text-size-adjust: none; + -webkit-touch-callout: none; + box-sizing: border-box +} + +body:not(.ready) { + overflow: hidden +} + +body:not(.ready) .app-nav, +body:not(.ready)>nav, +body:not(.ready) [data-cloak] { + display: none +} + +div#app { + font-size: 30px; + font-weight: lighter; + margin: 40vh auto; + text-align: center +} + +div#app:empty:before { + content: "Loading..." +} + +img.emoji { + height: 1.2em +} + +img.emoji, +span.emoji { + vertical-align: middle +} + +span.emoji { + font-family: Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji; + font-size: 1.2em +} + +.progress { + background-color: #c5247f; + background-color: var(--theme-color, #c5247f); + height: 2px; + left: 0; + position: fixed; + right: 0; + top: 0; + transition: width .2s, opacity .4s; + width: 0; + z-index: 999999 +} + +.search .search-keyword, +.search a:hover { + color: #c5247f; + color: var(--theme-color, #c5247f) +} + +.search .search-keyword { + font-style: normal; + font-weight: 700 +} + +body, +html { + height: 100% +} + +body { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + color: #34495e; + font-family: 'Open Sans', sans-serif; + font-size: 15px; + letter-spacing: 0; + margin: 0; + overflow-x: hidden +} + +img { + max-width: 100% +} + +a[disabled] { + cursor: not-allowed; + opacity: .6 +} + +kbd { + border: 1px solid #ccc; + border-radius: 3px; + display: inline-block; + font-size: 12px !important; + line-height: 12px; + margin-bottom: 3px; + padding: 3px 5px; + vertical-align: middle +} + +li input[type=checkbox] { + margin: 0 .2em .25em 0; + vertical-align: middle +} + +.app-nav { + margin: 25px 60px 0 0; + position: absolute; + right: 0; + text-align: right; + z-index: 10 +} + +.app-nav.no-badge { + margin-right: 25px +} + +.app-nav p { + margin: 0 +} + +.app-nav>a { + margin: 0 1rem; + padding: 5px 0 +} + +.app-nav li, +.app-nav ul { + display: inline-block; + list-style: none; + margin: 0 +} + +.app-nav a { + color: inherit; + font-size: 16px; + text-decoration: none; + transition: color .3s +} + +.app-nav a.active, +.app-nav a:hover { + color: #c5247f; + color: var(--theme-color, #c5247f) +} + +.app-nav a.active { + border-bottom: 2px solid #c5247f; + border-bottom: 2px solid var(--theme-color, #c5247f) +} + +.app-nav li { + display: inline-block; + margin: 0 1rem; + padding: 5px 0; + position: relative; + cursor: pointer +} + +.app-nav li ul { + background-color: #fff; + border: 1px solid; + border-color: #ddd #ddd #ccc; + border-radius: 4px; + box-sizing: border-box; + display: none; + max-height: calc(100vh - 61px); + overflow-y: auto; + padding: 10px 0; + position: absolute; + right: -15px; + text-align: left; + top: 100%; + white-space: nowrap +} + +.app-nav li ul li { + display: block; + font-size: 14px; + line-height: 1rem; + margin: 8px 14px; + white-space: nowrap +} + +.app-nav li ul a { + display: block; + font-size: inherit; + margin: 0; + padding: 0 +} + +.app-nav li ul a.active { + border-bottom: 0 +} + +.app-nav li:hover ul { + display: block +} + +main { + display: block; + position: relative; + width: 100vw; + height: 100%; + z-index: 0 +} + +main.hidden { + display: none +} + +.anchor { + display: inline-block; + text-decoration: none; + transition: all .3s +} + +.anchor span { + color: #34495e +} + +.anchor:hover { + text-decoration: underline +} + +.sidebar { + border-right: 1px solid rgba(0, 0, 0, .07); + overflow-y: auto; + padding: 40px 0 0; + position: absolute; + top: 0; + bottom: 0; + left: 0; + transition: transform .25s ease-out; + width: 300px; + z-index: 20 +} + +.sidebar>h1, h2 { + margin: 0 0 0 10px; + font-weight: 400; + color: #c5247f; +} + +.sidebar>h1 { + font-size: 1.5rem; +} + +.sidebar>h1 { + font-size: 1.3rem; +} + +.sidebar>h1 a { + color: inherit; + text-decoration: none +} + +.sidebar>h1 .app-nav { + display: block; + position: static +} + +.sidebar .sidebar-nav { + line-height: 2em; + padding-bottom: 40px +} + + +.sidebar .ext { + color: inherit; + margin: 0 0 0 15px; + text-decoration: none +} + +.sidebar li.collapse .app-sub-sidebar { + display: none +} + +.sidebar ul { + margin: 0 0 0 15px; + padding: 0 +} + +.sidebar li>p { + font-weight: 700; + margin: 0 +} + +.sidebar ul, +.sidebar ul li { + list-style: none +} + +.sidebar ul li a { + border-bottom: none; + display: block +} + +.sidebar ul li ul { + padding-left: 20px +} + +.sidebar::-webkit-scrollbar { + width: 4px +} + +.sidebar::-webkit-scrollbar-thumb { + background: transparent; + border-radius: 4px +} + +.sidebar:hover::-webkit-scrollbar-thumb { + background: hsla(0, 0%, 53.3%, .4) +} + +.sidebar:hover::-webkit-scrollbar-track { + background: hsla(0, 0%, 53.3%, .1) +} + +.sidebar-toggle { + background-color: transparent; + background-color: hsla(0, 0%, 100%, .8); + border: 0; + outline: none; + padding: 10px; + position: absolute; + bottom: 0; + left: 0; + text-align: center; + transition: opacity .3s; + width: 284px; + z-index: 30; + cursor: pointer +} + +.sidebar-toggle:hover .sidebar-toggle-button { + opacity: .4 +} + +.sidebar-toggle span { + background-color: #c5247f; + background-color: var(--theme-color, #c5247f); + display: block; + margin-bottom: 4px; + width: 16px; + height: 2px +} + +body.sticky .sidebar, +body.sticky .sidebar-toggle { + position: fixed +} + +.content { + padding-top: 60px; + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 300px; + transition: left .25s ease +} + +.markdown-section { + margin: 0 auto; + max-width: 80%; + padding: 30px 15px 40px; + position: relative +} + +.markdown-section>* { + box-sizing: border-box; + font-size: inherit +} + +.markdown-section>:first-child { + margin-top: 0 !important +} + +.markdown-section hr { + border: none; + border-bottom: 1px solid #eee; + margin: 2em 0 +} + +.markdown-section iframe { + border: 1px solid #eee; + width: 1px; + min-width: 100% +} + +.markdown-section table { + border-collapse: collapse; + border-spacing: 0; + display: block; + margin-bottom: 1rem; + overflow: auto; + width: 100% +} + +.markdown-section th { + font-weight: 700 +} + +.markdown-section td, +.markdown-section th { + border: 1px solid #ddd; + padding: 6px 13px +} + +.markdown-section tr { + border-top: 1px solid #ccc +} + +.markdown-section p.tip, +.markdown-section tr:nth-child(2n) { + background-color: #f8f8f8 +} + +.markdown-section p.tip { + border-bottom-right-radius: 2px; + border-left: 4px solid #f66; + border-top-right-radius: 2px; + margin: 2em 0; + padding: 12px 24px 12px 30px; + position: relative +} + +.markdown-section p.tip:before { + background-color: #f66; + border-radius: 100%; + color: #fff; + content: "!"; + font-family: Dosis, Source Sans Pro, Helvetica Neue, Arial, sans-serif; + font-size: 14px; + font-weight: 700; + left: -12px; + line-height: 20px; + position: absolute; + height: 20px; + width: 20px; + text-align: center; + top: 14px +} + +.markdown-section p.tip code { + background-color: #efefef +} + +.markdown-section p.tip em { + color: #34495e +} + +.markdown-section p.warn { + background: rgba(66, 185, 131, .1); + border-radius: 2px; + padding: 1rem +} + +.markdown-section ul.task-list>li { + list-style-type: none +} + +body.close .sidebar { + transform: translateX(-300px) +} + +body.close .sidebar-toggle { + width: auto +} + +body.close .content { + left: 0 +} + +@media print { + + .app-nav, + .sidebar, + .sidebar-toggle { + display: none + } +} + +@media screen and (max-width:768px) { + + .sidebar, + .sidebar-toggle { + position: fixed + } + + .app-nav { + margin-top: 16px + } + + .app-nav li ul { + top: 30px + } + + main { + height: auto; + min-height: 100vh; + overflow-x: hidden + } + + .sidebar { + left: -300px; + transition: transform .25s ease-out + } + + .content { + left: 0; + max-width: 100vw; + position: static; + padding-top: 20px; + transition: transform .25s ease + } + + .app-nav { + transition: transform .25s ease-out + } + + .sidebar-toggle { + background-color: transparent; + width: auto; + padding: 30px 30px 10px 10px + } + + body.close .sidebar { + transform: translateX(300px) + } + + body.close .sidebar-toggle { + background-color: hsla(0, 0%, 100%, .8); + transition: background-color 1s; + width: 284px; + padding: 10px + } + + body.close .content { + transform: translateX(300px) + } + + body.close .app-nav { + display: none + } + +} + +section.cover { + position: relative; + align-items: center; + background-position: 50%; + background-repeat: no-repeat; + background-size: cover; + min-height: 100vh; + width: 100%; + display: none +} + +section.cover.show { + display: flex +} + +section.cover.has-mask .mask { + background-color: #fff; + opacity: .8; + position: absolute; + top: 0; + bottom: 0; + width: 100% +} + +section.cover .cover-main { + flex: 1; + margin: 0 16px; + text-align: center; + position: relative +} + +section.cover a { + color: inherit +} + +section.cover a, +section.cover a:hover { + text-decoration: none +} + +section.cover p { + line-height: 1.5rem; + margin: 1em 0 +} + +section.cover h1 { + color: inherit; + font-size: 2.5rem; + font-weight: 300; + margin: .625rem 0 2.5rem; + position: relative; + text-align: center +} + +section.cover h1 a { + display: block +} + +section.cover h1 small { + bottom: -.4375rem; + font-size: 1rem; + position: absolute +} + +section.cover blockquote { + font-size: 1.5rem; + text-align: center +} + +section.cover ul { + line-height: 1.8; + list-style-type: none; + margin: 1em auto; + max-width: 500px; + padding: 0 +} + +section.cover .cover-main>p:last-child a { + border-radius: 2rem; + border: 1px solid #c5247f; + border-color: var(--theme-color, #c5247f); + box-sizing: border-box; + color: #c5247f; + color: var(--theme-color, #c5247f); + display: inline-block; + font-size: 1.05rem; + letter-spacing: .1rem; + margin: .5rem 1rem; + padding: .75em 2rem; + text-decoration: none; + transition: all .15s ease +} + +section.cover .cover-main>p:last-child a:last-child { + background-color: #c5247f; + background-color: var(--theme-color, #c5247f); + color: #fff +} + +section.cover .cover-main>p:last-child a:last-child:hover { + color: inherit; + opacity: .8 +} + +section.cover .cover-main>p:last-child a:hover { + color: inherit +} + +section.cover blockquote>p>a { + border-bottom: 2px solid #c5247f; + border-bottom: 2px solid var(--theme-color, #c5247f); + transition: color .3s +} + +section.cover blockquote>p>a:hover { + color: #c5247f; + color: var(--theme-color, #c5247f) +} + +.sidebar, +body { + background-color: #fff +} + +.sidebar { + color: #364149 +} + +.sidebar li { + margin: 6px 0 +} + +.sidebar ul li a { + color: #505d6b; + font-size: 14px; + font-weight: 400; + overflow: hidden; + text-decoration: none; + text-overflow: ellipsis; + white-space: nowrap +} + +.sidebar ul li a:hover { + text-decoration: underline +} + +.sidebar ul li ul { + padding: 0 +} + +.sidebar ul li.active>a { + border-right: 2px solid; + color: #c5247f; + color: var(--theme-color, #c5247f); + font-weight: 600 +} + +.app-sub-sidebar li:before { + content: "-"; + padding-right: 4px; + float: left +} + +.markdown-section h1, +.markdown-section h2, +.markdown-section h3, +.markdown-section h4, +.markdown-section strong { + color: #2c3e50; + font-weight: 600 +} + +.markdown-section a { + color: #c5247f; + color: var(--theme-color, #c5247f); + font-weight: 600 +} + +.markdown-section h1 { + font-size: 2rem; + margin: 0 0 1rem +} + +.markdown-section h2 { + font-size: 1.75rem; + margin: 45px 0 .8rem +} + +.markdown-section h3 { + font-size: 1.5rem; + margin: 40px 0 .6rem +} + +.markdown-section h4 { + font-size: 1.25rem +} + +.markdown-section h5 { + font-size: 1rem +} + +.markdown-section h6 { + color: #777; + font-size: 1rem +} + +.markdown-section figure, +.markdown-section p { + margin: 1.2em 0 +} + +.markdown-section ol, +.markdown-section p, +.markdown-section ul { + line-height: 1.6rem; + word-spacing: .05rem +} + +.markdown-section ol, +.markdown-section ul { + padding-left: 1.5rem +} + +.markdown-section blockquote { + border-left: 4px solid #c5247f; + border-left: 4px solid var(--theme-color, #c5247f); + color: #858585; + margin: 2em 0; + padding-left: 20px +} + +.markdown-section blockquote p { + font-weight: 600; + margin-left: 0 +} + +.markdown-section iframe { + margin: 1em 0 +} + +.markdown-section em { + color: #7f8c8d +} + +.markdown-section code, +.markdown-section output:after, +.markdown-section pre { + font-family: Roboto Mono, Monaco, courier, monospace +} + +.markdown-section code, +.markdown-section pre { + background-color: #f8f8f8 +} + +.markdown-section output, +.markdown-section pre { + margin: 1.2em 0; + position: relative +} + +.markdown-section output, +.markdown-section pre>code { + border-radius: 2px; + display: block +} + +.markdown-section output:after, +.markdown-section pre>code { + -moz-osx-font-smoothing: initial; + -webkit-font-smoothing: initial +} + +.markdown-section code { + border-radius: 2px; + /*Approx the other side of the colour wheel from OFM pink.*/ + color: #2fbf73; + margin: 0 2px; + padding: 3px 5px; + white-space: pre-wrap +} + +.markdown-section>:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) code { + font-size: .8rem +} + +.markdown-section pre { + padding: 0 1.4rem; + line-height: 1.5rem; + overflow: auto; + word-wrap: normal +} + +.markdown-section pre>code { + color: #525252; + font-size: .8rem; + padding: 2.2em 5px; + line-height: inherit; + margin: 0 2px; + max-width: inherit; + overflow: inherit; + white-space: inherit +} + +.markdown-section output { + padding: 1.7rem 1.4rem; + border: 1px dotted #ccc +} + +.markdown-section output>:first-child { + margin-top: 0 +} + +.markdown-section output>:last-child { + margin-bottom: 0 +} + +.markdown-section code:after, +.markdown-section code:before, +.markdown-section output:after, +.markdown-section output:before { + letter-spacing: .05rem +} + +.markdown-section output:after, +.markdown-section pre:after { + color: #ccc; + font-size: .6rem; + font-weight: 600; + height: 15px; + line-height: 15px; + padding: 5px 10px 0; + position: absolute; + right: 0; + text-align: right; + top: 0; + content: attr(data-lang) +} + +.token.cdata, +.token.comment, +.token.doctype, +.token.prolog { + color: #8e908c +} + +.token.namespace { + opacity: .7 +} + +.token.boolean, +.token.number { + color: #c76b29 +} + +.token.punctuation { + color: #525252 +} + +.token.property { + color: #c08b30 +} + +.token.tag { + color: #2973b7 +} + +.token.string { + color: #c5247f; + color: var(--theme-color, #c5247f) +} + +.token.selector { + color: #6679cc +} + +.token.attr-name { + color: #2973b7 +} + +.language-css .token.string, +.style .token.string, +.token.entity, +.token.url { + color: #22a2c9 +} + +.token.attr-value, +.token.control, +.token.directive, +.token.unit { + color: #c5247f; + color: var(--theme-color, #c5247f) +} + +.token.function, +.token.keyword { + color: #e96900 +} + +.token.atrule, +.token.regex, +.token.statement { + color: #22a2c9 +} + +.token.placeholder, +.token.variable { + color: #3d8fd1 +} + +.token.deleted { + text-decoration: line-through +} + +.token.inserted { + border-bottom: 1px dotted #202746; + text-decoration: none +} + +.token.italic { + font-style: italic +} + +.token.bold, +.token.important { + font-weight: 700 +} + +.token.important { + color: #c94922 +} + +.token.entity { + cursor: help +} + +code .token { + -moz-osx-font-smoothing: initial; + -webkit-font-smoothing: initial; + min-height: 1.5rem; + position: relative; + left: auto +} \ No newline at end of file diff --git a/apidocs/dev/picamera-tuning-files.md b/apidocs/dev/picamera-tuning-files.md new file mode 100644 index 00000000..000b0194 --- /dev/null +++ b/apidocs/dev/picamera-tuning-files.md @@ -0,0 +1,188 @@ +# Raspberry Pi Camera Tuning Files + +The OpenFlexure Microscope ships its own custom Raspberry Pi Camera tuning files. This page provides more information on these files. + + +## A list of all the settings in the Raspberry Pi Camera (vc4) tuning files. + +Note that VC4 is the patform used by the Pi for with the broadcom ISP. From Pi 5 onwards Raspberry Pi uses their own ISP (PiSP). These have their own tuning file structure. + +More data is available in this datasheet: https://datasheets.raspberrypi.com/camera/raspberry-pi-camera-guide.pdf + +### version: + +This needs to be 2.0. Version one was a normal dictionary of algorithms, rather than this current structure with the algorithms as a list. + +### target + +Needs to be bcm2835. This is the broadcom system on a chip used by vc4. + +### Algorithms + +#### rpi.black_level - Sensor Black Level + +Contains one key-value pair. i.e.: `black_level: 4096` + +Note that this is not the actual black level of the sensor, but the black level once the image has been scaled up to 16 bit. So for a 10-bit sensor this number would need to be divided by 2^6. + +#### rpi.dpc - Defective Pixel Correction + +This has three strength parameters: + +* 0 - None +* 1 - Normal (default) +* 2 - Strong + +#### rpi.lux - Lux Calculation + +This is used to create the lux value. This lux value is not used in the ISP but is sent to the metadata for the image for downstream control algorithms. The camera may crash if this is removed even though we turn off the adaptive algorithms. + +#### rpi.noise - Noise Profile + +This calculates the noise profile for the current images. + +Values from the default tuning files for imx219 and imx477 are: + +``` +"reference_constant": 0, +"reference_slope": 3.67 +``` + +These can be optimised using the methods in the camera tuning tool shipped with libcamera. Though most of the camera tuning tool methods make assumptions that are invalid for a microscope. As such any tuning would need further consideration. + +#### rpi.geq - Green Equalisation + +##### The problems with green equalisation + +This tried to calculate whether adjacent grren pixels should be equal. This interacts very porly with the chief ray angle compensation when using the camera. The imx219 has a lenslet array: + +![](assets/ChiefRayAngle.png) + +Normally as shown in (a) the light comes in at an angle as we get to the edge of the sensor due to how close the lens is to the camera. The lenslet array is designed for this and so if you are in the centre (b), or at the edge (d) the light is focussed onto the correct pixel. + +For a microscope the light comes in perpendicular to the sensor, this makes no difference in the centre but at the edge of the image (e) there is a lot of cross talk between pixels. + +But it makes sense that this also strongly affects the green imbalance (which is something I didn't know about, but should, and will need to read about in more detail so we can improve tuning). If we consider the case of red light, we expect that the red pixels are the only illuminated pixels. If we consider what happens on the sensor in the case of the microscope, I think the light will be focussing on the positions shown: + +![](assets/GreenEqualisation.png) + +So in the case of the diagonals this is illuminating the green in both the red and the blue row. Where as in the areas we were seeing issues the red light will be strongly illuminating the the greens in one row but not the other. + +The result is that for strongly red on the edges every other geen pixel is illuminated causing an overflow. + +##### Turning off the adaptive green equalisation + +The parameters for geeen equalisation are a `slope` and `offset` + +The "green equalisation" algorithm averages Gr and Gb when they "don't look that different". The threshold below which things get averaged is given by + +`threshold = offset + pixel_value * slope` + +As we always want the green pixels to be averaged to remove the effect above. We can set `offset` the maximum 16-bit value (65535). In this case it will always average green pixels, no matter the pixel value or the value of `slope`. + +#### rpi.sdn - Spatial Denoise + +This algorithm is used on the VC4 (Pi 4) but not on PiSP (Pi 5) which uses `rpi.denoise`. A warning on startup asks us to move it into `rpi.denoise` even though we are on VC4 that does not support `rpi.denoise`. + +#### rpi.awb - Automatic White Balance + +Even though we don't use it, camera can't start without it being minimally populated. + +#### rpi.agc - Automatic Gain Control / Automatic Exposure Control + +For calculating the shutter time of the sensor if AeEnable is on. Only the required fields are populated with minimal data as AeEnable is always off. + +#### rpi.alsc - Automatic Lens Shading Correction + +Auto lens shading correction is calibrated by our microscope. This contains the tables for luninance, and colour shading. It can contain multiple tables depending on estimated colour temperature (`ct`). As the microscope has fixed lighting we only provide one set of tables as we don't want the correction to be adaptive. + +We also set `n_iter: 0`. This stops it adding iterative adaptuion. + +As there is only one table, the colour temperature is ignored. We set the colour temperature to 1234 in the tuning file to make it clear that we have not calibrated it on the microscope. We set the colour temperature to 5000 (our actual illumination colour temperature) once recalibrated. + +The tables are flat 1s for luminance on for both sensors. + +For the IMX477 (PiCamera HQ), the Cr and Cb tables are flat, but Cb is 2.0 not 1.0 for all values. This is so that the initial colour gains are set to (1.0, 2.0) + +For the IMX219 (PiCamera v2), the Cr and Cb tables are symmetric tables taken from the top quadrant of a calibrated microscope. They are used to create a good enough correction that the microscope is initially usable for alignment. + +#### rpi.contrast - Contrast + +This does the gamma correction. If `ce_enable` is 1 then the gamma correction is somewhat adaptive. We set this to zero to always use the specified gamma table. + +The table of gamma values is a 1d list of alternating x,y values in the gamma curve. + +We may want to adjust the gamma curve in future. + +#### rpi.ccm - Colour Correction Matrix + +It is possible tp ship different CCMs to be used based on the estimated colour temperatire. We only ship one CCM as our illumination colour temperature is fixed to 5000K, the colour temperature of the LED board. However, the diffuser might affect this. + +The CCMs are different for PiCamera HQ and PiCamera version 2. The default tuning files for these cameras (`/usr/share/libcamera/ipa/rpi/vc4/imx219.json` or `/usr/share/libcamera/ipa/rpi/vc4/imx477.json`) specify CCMs for a number of temperatures but not for 5000K. As such we linearly interpolate between temperatures around 5000K with the following code: + +``` +import numpy as np + +temps = {4650: + np.array([ + 2.18174, -0.70887, -0.47287, + -0.70196, 2.76426, -1.06231, + -0.25157, -0.71978, 1.97135 + ]), + 5858: + np.array( + [ + 2.32392, -0.88421, -0.43971, + -0.63821, 2.58348, -0.94527, + -0.28541, -0.54112, 1.82653 + ]) + } +target_temp = 5000 +temp_low, temp_high = sorted(temps.keys()) +alpha = (target_temp - temp_low) / (temp_high - temp_low) + +print(alpha) + +ccm_interp = (1 - alpha) * temps[temp_low] + alpha * temps[temp_high] +print(np.round(ccm_interp, 6)) + +temps = {4559: np.array( + [ + 2.15423, -0.98143, -0.17279, + -0.38131, 2.14763, -0.76632, + -0.10069, -0.54383, 1.64452 + ]), + 5881:np.array( + [ + 2.18464, -0.95493, -0.22971, + -0.36826, 2.00298, -0.63471, + -0.15219, -0.38055, 1.53274 + ]) + } +target_temp = 5000 +temp_low, temp_high = sorted(temps.keys()) +alpha = (target_temp - temp_low) / (temp_high - temp_low) + +print(alpha) + +ccm_interp = (1 - alpha) * temps[temp_low] + alpha * temps[temp_high] +print(np.round(ccm_interp, 6)) +``` + +##### Calculating our own CCMs + +The CCM calculation is done using a MacBeth target. Lib camera provides a method for this using the Colour Tuning Tool. We will need to adapt this algorithm as they image the target at once and pick out the areas. We have fixed lighting but do not have colour uniformity. + +In the future, with a colour calibration slide, we can take images of each colour with fixed camera settings to create a CCM using the same calculations as the Camera Tuning Tool. + +#### rpi.sharpen - Sharpening + +This is empty. We do not want to be artificially sharpening images as this can add in artifacts. + +#### rpi.hdr - High dynamic range + +Not relevant for us, we don't use high dynamic range capture. + +#### rpi.sync - Software Camera Synchronisation + +Not relevant for us, we only have 1 camera. diff --git a/apidocs/index.html b/apidocs/index.html index 402f8717..ac26f720 100644 --- a/apidocs/index.html +++ b/apidocs/index.html @@ -42,6 +42,7 @@ a { font-weight: 600; border-radius: 6px; width: fit-content; + min-width: 15rem; transition: 0.15s ease; } @@ -61,6 +62,7 @@ a:hover {
HTTP API (Swagger) Python API + Developer Guidance diff --git a/docs/images/ChiefRayAngle.png b/docs/images/ChiefRayAngle.png deleted file mode 100644 index 6fc03089..00000000 --- a/docs/images/ChiefRayAngle.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:36ca9e6e8ee0af71a03dee4a6e2d4405c63d54ea9b123046d39c0187402504da -size 96857 diff --git a/docs/images/GreenEqualisation.png b/docs/images/GreenEqualisation.png deleted file mode 100644 index 71cbcd58..00000000 --- a/docs/images/GreenEqualisation.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8f65ef3712cb9986cb28f40000ddb283e89fe93671b55ad12d8b6fc057afeac9 -size 111804 diff --git a/src/openflexure_microscope_server/things/camera/tuning_files/vc4/README.md b/src/openflexure_microscope_server/things/camera/tuning_files/vc4/README.md index 7881ab22..56fa1d53 100644 --- a/src/openflexure_microscope_server/things/camera/tuning_files/vc4/README.md +++ b/src/openflexure_microscope_server/things/camera/tuning_files/vc4/README.md @@ -1,183 +1,3 @@ -# A list of all the settings in the Raspberry Pi Camera (vc4) tuning files. +## Tuning files. -Note that VC4 is the patform used by the Pi for with the broadcom ISP. From Pi 5 onwards Raspberry Pi uses their own ISP (PiSP). These have their own tuning file structure. - -More data is available in this datasheet: https://datasheets.raspberrypi.com/camera/raspberry-pi-camera-guide.pdf - -## version: - -This needs to be 2.0, version one was a normal dictionary of algorithms, rather than this current structure with the algorithms as a list. - -## target - -Needs to be bcm2835. This is the broadcom system on a chip used by vc4. - -## Algorithms - -### rpi.black_level - Sensor Black Level - -Contains one key-value pair. i.e.: `black_level: 4096` - -Note that this is not the actual black level of the sensor, but the black level once the image has been scaled up to 16 bit. So for a 10-bit sensor this number would need to be divided by 2^6. - -### rpi.dpc - Defective Pixel Correction - -This has three strength parameters: - -* 0 - None -* 1 - Normal (default) -* 2 - Strong - -### rpi.lux - Lux Calculation - -This is used to create the lux value. This lux value is not used in the ISP but is sent to the metadata for the image for downstream control algorithms. The camera may crash if this is removed even though we turn off the adaptive algorithms. - -### rpi.noise - Noise Profile - -This calculates the noise profile for the current images. - -Values from the default tuning files for imx219 and imx477 are: - -``` -"reference_constant": 0, -"reference_slope": 3.67 -``` - -These can be optimised using the methods in the camera tuning tool shipped with libcamera. Though most of the camera tuning tool methods make assumptions that are invalid for a microscope. As such any tuning would need further consideration. - -### rpi.geq - Green Equalisation - -#### The problems with green equalisation - -This tried to calculate whether adjacent grren pixels should be equal. This interacts very porly with the chief ray angle compensation when using the camera. The imx219 has a lenslet array: - -![](../../../../../../docs/images/ChiefRayAngle.png) - -Normally as shown in (a) the light comes in at an angle as we get to the edge of the sensor due to how close the lens is to the camera. The lenslet array is designed for this and so if you are in the centre (b), or at the edge (d) the light is focussed onto the correct pixel. - -For a microscope the light comes in perpendicular to the sensor, this makes no difference in the centre but at the edge of the image (e) there is a lot of cross talk between pixels. - -But it makes sense that this also strongly affects the green imbalance (which is something I didn't know about, but should, and will need to read about in more detail so we can improve tuning). If we consider the case of red light, we expect that the red pixels are the only illuminated pixels. If we consider what happens on the sensor in the case of the microscope, I think the light will be focussing on the positions shown: - -![](../../../../../../docs/images/GreenEqualisation.png) - -So in the case of the diagonals this is illuminating the green in both the red and the blue row. Where as in the areas we were seeing issues the red light will be strongly illuminating the the greens in one row but not the other. - -The result is that for strongly red on the edges every other geen pixel is illuminated causing an overflow. - -#### Turning off the adaptive green equalisation - -The parameters for geeen equalisation are a `slope` and `offset` - -The "green equalisation" algorithm averages Gr and Gb when they "don't look that different". The threshold below which things get averaged is given by - -`threshold = offset + pixel_value * slope` - -As we always want the green pixels to be averaged to remove the effect above. We can set `offset` the maximum 16-bit value (65535). In this case it will always average green pixels, no matter the pixel value or the value of `slope`. - -### rpi.sdn - Spatial Denoise - -This algorithm is used on the VC4 (Pi 4) but not on PiSP (Pi 5) which uses `rpi.denoise`. A warning on startup asks us to move it into `rpi.denoise` even though we are on VC4 that does not support `rpi.denoise`. - -### rpi.awb - Automatic White Balance - -Even though we don't use it, camera can't start without it being minimally populated. - -### rpi.agc - Automatic Gain Control / Automatic Exposure Control - -For calculating the shutter time of the sensor if AeEnable is on. Only the required fields are populated with minimal data as AeEnable is always off. - -### rpi.alsc - Automatic Lens Shading Correction - -Auto lens shading correction is calibrated by our microscope. This contains the tables for luninance, and colour shading. It can contain multiple tables depending on estimated colour temperature (`ct`). As the microscope has fixed lighting we only provide one set of tables as we don't want the correction to be adaptive. - -We also set `n_iter: 0`. This stops it adding iterative adaptuion. - -As there is only one table, the colour temperature is ignored. We set the colour temperature to 1234 in the tuning file to make it clear that we have not calibrated it on the microscope. We set the colour temperature to 5000 (our actual illumination colour temperature) once recalibrated. - -The tables are flat 1s for luminance on for both sensors. - -For the IMX477 (PiCamera HQ), the Cr and Cb tables are flat, but Cb is 2.0 not 1.0 for all values. This is so that the initial colour gains are set to (1.0, 2.0) - -For the IMX219 (PiCamera v2), the Cr and Cb tables are symmetric tables taken from the top quadrant of a calibrated microscope. They are used to create a good enough correction that the microscope is initially usable for alignment. - -### rpi.contrast - Contrast - -This does the gamma correction. If `ce_enable` is 1 then the gamma correction is somewhat adaptive. We set this to zero to always use the specified gamma table. - -The table of gamma values is a 1d list of alternating x,y values in the gamma curve. - -We may want to adjust the gamma curve in future. - -### rpi.ccm - Colour Correction Matrix - -It is possible tp ship different CCMs to be used based on the estimated colour temperatire. We only ship one CCM as our illumination colour temperature is fixed to 5000K, the colour temperature of the LED board. However, the diffuser might affect this. - -The CCMs are different for PiCamera HQ and PiCamera version 2. The default tuning files for these cameras (`/usr/share/libcamera/ipa/rpi/vc4/imx219.json` or `/usr/share/libcamera/ipa/rpi/vc4/imx477.json`) specify CCMs for a number of temperatures but not for 5000K. As such we linearly interpolate between temperatures around 5000K with the following code: - -``` -import numpy as np - -temps = {4650: - np.array([ - 2.18174, -0.70887, -0.47287, - -0.70196, 2.76426, -1.06231, - -0.25157, -0.71978, 1.97135 - ]), - 5858: - np.array( - [ - 2.32392, -0.88421, -0.43971, - -0.63821, 2.58348, -0.94527, - -0.28541, -0.54112, 1.82653 - ]) - } -target_temp = 5000 -temp_low, temp_high = sorted(temps.keys()) -alpha = (target_temp - temp_low) / (temp_high - temp_low) - -print(alpha) - -ccm_interp = (1 - alpha) * temps[temp_low] + alpha * temps[temp_high] -print(np.round(ccm_interp, 6)) - -temps = {4559: np.array( - [ - 2.15423, -0.98143, -0.17279, - -0.38131, 2.14763, -0.76632, - -0.10069, -0.54383, 1.64452 - ]), - 5881:np.array( - [ - 2.18464, -0.95493, -0.22971, - -0.36826, 2.00298, -0.63471, - -0.15219, -0.38055, 1.53274 - ]) - } -target_temp = 5000 -temp_low, temp_high = sorted(temps.keys()) -alpha = (target_temp - temp_low) / (temp_high - temp_low) - -print(alpha) - -ccm_interp = (1 - alpha) * temps[temp_low] + alpha * temps[temp_high] -print(np.round(ccm_interp, 6)) -``` - -#### Calculating our own CCMs - -The CCM calculation is done using a MacBeth target. Lib camera provides a method for this using the Colour Tuning Tool. We will need to adapt this algorithm as they image the target at once and pick out the areas. We have fixed lighting but do not have colour uniformity. - -In the future, with a colour calibration slide, we can take images of each colour with fixed camera settings to create a CCM using the same calculations as the Camera Tuning Tool. - -### rpi.sharpen - Sharpening - -This is empty. We do not want to be artificially sharpening images as this can add in artifacts. - -### rpi.hdr - High dynamic range - -Not relevant for us, we don't use high dynamic range capture. - -### rpi.sync - Software Camera Synchronisation - -Not relevant for us, we only have 1 camera. +More information on the tuning files can be found in the Developer Guidance. This can be found in the `apidocs/dev` directory, and or hosted on GitLab pages. \ No newline at end of file