Skip to content
Snippets Groups Projects
Commit ef1f8dd8 authored by Vojtěch Moravec's avatar Vojtěch Moravec
Browse files

Updated document.

parent f778a5f1
No related branches found
No related tags found
No related merge requests found
......@@ -4,4 +4,14 @@ SimpleImageViewer/
*.exe
*.czi
B3D/
czi_example_data/
\ No newline at end of file
czi_example_data/
# latex files
*.aux
*.fls
*.log
*.synctex.gz
*.out
*.bbl
*.blg
*.fdb_latexmk
\ No newline at end of file
......@@ -12,3 +12,7 @@
- Dala by se použít nějaká komprese vzhledem k `referenčním` obrázkům? (vztah mezi obrazy, jak jsou posunuty atd.)
- Možná se podívat co je to ten HDF5, ale spíš se zaměřit na CZI formát.
<!-- Popsat formát CZI, HDF5
Co je teda ve formátu CZI, jakým způsobem podporuje kompresi, jak tam jsou ty obrazové data uložena.
zkoumat jaká je souvislost mezi obrázky v různém čase. jestli by té slouvislosti šlo využít ke kompresi obrazu -->
@manual{czi_spec,
organization = "Carl Zeiss Microscopy GmbH",
title = ZISRAW (CZI) File Format",
year = 2016,
number = "MC33879",
note = "Version 1.2.2"
}
\ No newline at end of file
File added
\documentclass[a4paper,12pt]{article}
\usepackage[czech]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{listings}
\usepackage{hyperref}
\usepackage{enumitem}
\usepackage{mathrsfs}
\usepackage{enumitem}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{dirtytalk}
%\usepackage{titlesec}
%\newcommand{\sectionbreak}{\clearpage}
%\setlist{nosep}
\newcommand{\image}[3]{\begin{figure}[h!] \centering \includegraphics[width=#3\linewidth]{#1} \caption{#2} \end{figure}}
\author{Moravec Vojtěch}
\title{Semestrální projekt}
\date{2018/2019}
\begin{document}
% \maketitle
% \newpage
\section{ZISRAW (CZI) formát}
Vše co bude v této sekci uvedeno vychýzí z oficiální specifikace formátu CZI. \ref{czi_spec}.
Formát CZI je určen pro uložení obrazků, samotné schéma uložení dat ale vychází z formátu ZISRAW, který je určen pro různé typy souborů.
Hlavním cílem formátu ZISRAW je umožnit streamování dat a metadat v binární podobě (metadata jsou buď binární nebo v XML). \textit{CZI formát je aktuálně jedinou implementací ZISRAW.}
\subsection{CZI segmenty}
CZI soubor se skládá z řetězce segmentů, každý segment je identifikován hlavičkou s identifikátorem (SID). Hlavička segmentu se skládá ze 3 polí:
\begin{itemize}
\item \textbf{ID} - 16 B, unikátní ANSI kód s prefixem \say{ZISRAW}
\item \textbf{AllocatedSize} - 8 B, velikost rezervována pro data segmentu (velikost je vždy násobkem 32 B)
\item \textbf{UsedSize} - 8 B, počet bytů, kolik už je využitu daty segmentu (jestliže 0, pak celý segment je využit)
\end{itemize}
Za hlavičkou se nachází data daného segmentu. Tyto data se skládájí ze dvou částí, kde první část určuje velikost druhé části a to jaké data se v ni nacházejí. Hlavními typy dat jsou:
\begin{itemize}
\item \textbf{Pixely} (\textit{ImageSubBlock}) - pixely obrázků a s nim přímo spjata metadata. RAW nekompresované obrázky mohou být vícedimenzionální
\item \textbf{Metadata} - každý segment obsahuje jedny metadata. Ty obsahují XML řetězec, odpovídající danému schématu, a binární sekcí s dalšími daty ve formátu ZIP
\item \textbf{Přílohy} (\textit{Attachment}) - různé typy příloh
\end{itemize}
\subsection{ZISRAW kontejner}
Pořadí bytů je little-endian. Data jsou uložena v segmentech s definovanými schématy, každý segment obsahuje binární data nebo XML řetězec.
Je povoleno uložení do jednoho nebo více souborů, ale vždy existuje jeden hlavní, \emph{master} soubor. Každý ZISRAW soubor obsahuje tyto typy segmentů:
\begin{itemize}
\item \textbf{FileHeader}
\item \textbf{Metadata} - nevyžadováno
\item \textbf{SubBlockDirectory} - adresář všech SubBlock. Je vyžadován pokud existuje nějaký SubBlock
\item \textbf{SubBlock} - každý SubBlock ve svém segmentu, může obsahovat XML metadata a binární data
\item \textbf{AttachmentDirectory} - adresář všech Attachment, je vyžadován pokud existuje nějaký Attachment
\item \textbf{Attachment} - každý Attachment ve svém segmentu. Příloha je identifikována svým názvem
\end{itemize}
SubBlockDirectory a AttachmentDirectory obsahují informace potřebné pro přečtení pouze potřebného segmentu, dovolují přeskočit načítání segmentů,
které nejsou potřeba.
% \subsection{Schémata segmentů}
% V této sekci uvedeme základní informace o schématech segmentů. Jak již bylo zmíněno, každý segment začíná hlavičkou se 3 poli, Id, AllocatedSize a UsedSize.
% Pole Id nabýva hodnoty z této enumerace SID:
% \begin{itemize}
% \item \textbf{ZISRAWFILE} - hlavička souboru, nachází se na začátku souboru
% \item \textbf{ZISRAWDIRECTORY} - adresář segmentů
% \item \textbf{ZISRAWSUBBLOCK} - obsahuje data obrázků
% \item \textbf{ZISRAWMETADATA} - obsahuje metadata
% \item \textbf{ZISRAWATTACH} - přílohy
% \item \textbf{ZISRAWATTDIR} - adresář příloh
% \item \textbf{DELETED} - smazaný segment, měl by být ignorován
% \end{itemize}
\subsection{Obrazové data}
Data obrázků se nacházejí v \textbf{SubBlock} segmentech, tento segment obsahuje všechny informace o tom jak jsou data uložena a jak je interpretovat.
V CZI formátu jsou brány v potaz různé dimenze obrázku v \\multi-dimenzionálním hyperprostoru. Jsou jimi napříklád:
pozice ve směru X, pozice ve směru Y, čas zachycení, úhel zachycení, osvětlení při zachycení atd. Pixely mohou být uloženy v těchto typech:
\begin{figure}[h!]
\centering
\begin{tabular}{| l | c | l |}
\hline
Typ & Byte/Pixel & Poznámka \\\hline
Gray8 & 1 & 8 bit unsigned \\\hline
Gray16 & 2 & 16 bit unsigned \\\hline
Gray32Float & 4 & 32 bit IEEE float \\\hline
Bgr24 & 3 & 3 $\times$ 8 bit unsigned \\\hline
Bgr48 & 6 & 3 $\times$ 16 bit unsigned \\\hline
Bgr96Float & 12 & 3 $\times$ IEEE float \\\hline
Bgra32 & 4 & 4 $\times$ 8 bit unsigned \\\hline
Gray64ComplexFloat & 8 & 2 $\times$ IEEE float (komplexní a reálná část) \\\hline
Bgr192ComplexFloat & 24 & 8 $\times$ IEEE float (komplexní a reálná část) \\\hline
Gray32 & 4 & 32 bit signed \textit{planovaný} \\\hline
Gray64 & 8 & 64 bit float \textit{planovaný} \\\hline
\end{tabular}
\end{figure}
Data pixelů v CZI souboru mohou být jak nekomprimovaná tak komprimovaná.
Nekomprimovaná data jsou streamem pixelů podle jejich typu. Specifikace povoluje komprimaci dat pixelů pomocí LZW,
JPEG a Jpeg-Xr.
LZW je bezztrátová komprese, aktuálně se nepoužívá ve \say{widefield} mikroskopii. JPEG komprese je ztrátová a
může být použita pouze pro 2D obrazy.
Jpeg-XR podporuje jak ztrátovou tak i bezztrátovou kompresi. Vychází z JPEG a nabízí menší velikost pro stejnou kvalitu obrazu, ale stejně jako JPEG, je omezen na 2D obrazy.
\bibliography{citations}
\end{document}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment