<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>#jpeg2dicom on keya singh 𓂃 ⌂ ོ☼ 𓂃</title><link>https://keyasinghkya.github.io/tags/%23jpeg2dicom/</link><description>Recent content in #jpeg2dicom on keya singh 𓂃 ⌂ ོ☼ 𓂃</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>© 2026</copyright><lastBuildDate>Wed, 01 Feb 2023 00:00:00 +0000</lastBuildDate><atom:link href="https://keyasinghkya.github.io/tags/%23jpeg2dicom/index.xml" rel="self" type="application/rss+xml"/><item><title>zebrafish are apparently so cool</title><link>https://keyasinghkya.github.io/posts/zebrafish/</link><pubDate>Wed, 01 Feb 2023 00:00:00 +0000</pubDate><guid>https://keyasinghkya.github.io/posts/zebrafish/</guid><description>&lt;a href="https://www.facebase.org/chaise/record/#1/isa:dataset/RID=1-517M" target="_blank" class="link-preview-card"&gt;
&lt;div class="preview-content"&gt;
&lt;h4 class="preview-title"&gt;Dataset: Interactive Zebrafish Craniofacial Atlases&lt;/h4&gt;
&lt;p class="preview-description"&gt;&amp;#34;Multiple facets of morphology must be considered to decipher a craniofacial phenotype. Our objective was to create a resource for functional, anatomical, and developmental information that could be applied to normal and mutant contexts. To this end, we generated interactive, three-dimensional atlases of craniofacial anatomy in wild-type, adult zebrafish.&amp;#34;&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;
&lt;style&gt;
.link-preview-card {
display: flex;
gap: 1rem;
padding: 1rem;
border: 2px solid rgb(var(--color-neutral-300));
border-radius: 0.5rem;
text-decoration: none;
transition: all 0.2s;
margin: 1.5rem 0;
background: rgba(255, 255, 255, 0.5);
}
.dark .link-preview-card {
border-color: rgb(var(--color-neutral-700));
background: rgba(0, 0, 0, 0.3);
}
.link-preview-card:hover {
border-color: rgb(var(--color-primary-600));
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.preview-image {
flex-shrink: 0;
width: 200px;
height: 120px;
overflow: hidden;
border-radius: 0.25rem;
}
.preview-image img {
width: 100%;
height: 100%;
object-fit: cover;
}
.preview-content {
flex: 1;
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.preview-title {
margin: 0;
font-size: 1.1rem;
font-weight: 600;
color: rgb(var(--color-neutral-900));
}
.dark .preview-title {
color: rgb(var(--color-neutral-100));
}
.preview-description {
margin: 0;
font-size: 0.875rem;
color: rgb(var(--color-neutral-600));
line-height: 1.4;
flex: 1;
}
.dark .preview-description {
color: rgb(var(--color-neutral-400));
}
.preview-url {
font-size: 0.75rem;
color: rgb(var(--color-primary-600));
}
.dark .preview-url {
color: rgb(var(--color-primary-400));
}
@media (max-width: 640px) {
.link-preview-card {
flex-direction: column;
}
.preview-image {
width: 100%;
height: 150px;
}
}
&lt;/style&gt;
&lt;p&gt;&lt;figure&gt;&lt;img
class="my-0 rounded-md"
loading="lazy"
decoding="async"
fetchpriority="low"
alt=""
src="https://keyasinghkya.github.io/images/spiderfish-1.png"
&gt;&lt;/figure&gt;
&lt;figure&gt;&lt;img
class="my-0 rounded-md"
loading="lazy"
decoding="async"
fetchpriority="low"
alt=""
src="https://keyasinghkya.github.io/images/spiderfish-2.png"
&gt;&lt;/figure&gt;
&lt;/p&gt;</description></item><item><title>LyrArkestra+</title><link>https://keyasinghkya.github.io/projects/live/lyra/</link><pubDate>Fri, 18 Nov 2022 00:00:00 +0000</pubDate><guid>https://keyasinghkya.github.io/projects/live/lyra/</guid><description>&lt;p&gt;LyrArkestra+ was a collaborative project within which I created visuals along with &lt;a
href="https://cristinamaldonado.com"
target="_blank"
&gt;Cristina&lt;/a&gt; and &lt;a
href="https://isajuchniewicz.com"
target="_blank"
&gt;Isa&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The project focused on performing graphic scores primarily by Czech and Slovak composers in unconventional audiovisual renditions. The international ensemble of this essentially fluid project does not have a permanent team. The audio composition were developed and performed by Tomáš Knoflíček (Gurun Gurun) from Ostrava, Michal Zbořil (IQ+1, B4) from Přerov, Daniel Jakeš (Jasnovidec, Koroze) from High Tatras, Ken Ganfield (PIO, The MoND) from Ames, Martin Nábělek (Boyse) from Banská Bystrica, and Petr Vrba (Poisonous Frequencies, Banausoi) from Prague. All sounds originated in the Lyra synthesizer, which is described as &amp;ldquo;organismic&amp;rdquo;, i.e. close to living organisms in its internal interactions and functioning on the basis of imaginary &amp;ldquo;conversations&amp;rdquo; between the individual modules&amp;hellip;The musical component is complemented by the visuals of Cristina Maldonado, Keya Singh and Isa Juchniewicz, who has created a structured digital environment that both responds directly to the music and allows for an additional layer of improvisation.&lt;/p&gt;</description></item><item><title>1964_2020</title><link>https://keyasinghkya.github.io/projects/video/1964-2020/</link><pubDate>Mon, 21 Dec 2020 00:00:00 +0000</pubDate><guid>https://keyasinghkya.github.io/projects/video/1964-2020/</guid><description>&lt;p&gt;&lt;div class="vimeo-responsive " style="margin: 2rem 0;"&gt;
&lt;iframe src="https://player.vimeo.com/video/493459269?responsive=1"
frameborder="0"
allow="autoplay; fullscreen; picture-in-picture"
allowfullscreen&gt;
&lt;/iframe&gt;
&lt;/div&gt;
&lt;style&gt;
.vimeo-responsive {
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
max-width: 1067px;
margin: 2rem auto;
}
.vimeo-responsive iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.vimeo-responsive.portrait {
padding-bottom: 177.78%;
max-width: 450px;
margin: 2rem auto;
}
.vimeo-responsive.square {
padding-bottom: 100%;
max-width: 600px;
margin: 2rem auto;
}
@media (max-width: 768px) {
.vimeo-responsive.portrait,
.vimeo-responsive.square {
max-width: 90%;
}
}
&lt;/style&gt;
Growing up, I watched my father dance to Ishq Tera Tadpave with such joy that it was infectious. I started mimicking his moves, and it soon became our song. It also became the song I could dance to without worrying about how I look or if people were looking at me funny. Inadvertently our dance routine helped my self-esteem/image.&lt;/p&gt;</description></item><item><title>Lunchmeat Festival 2020</title><link>https://keyasinghkya.github.io/projects/live/lunchmeat2020/</link><pubDate>Thu, 01 Oct 2020 00:00:00 +0000</pubDate><guid>https://keyasinghkya.github.io/projects/live/lunchmeat2020/</guid><description>&lt;div id="floating-toc" class="floating-toc"&gt;
&lt;button id="toc-toggle" class="toc-toggle"&gt;
&lt;span id="toc-icon"&gt;☰&lt;/span&gt; contents
&lt;/button&gt;
&lt;div id="toc-content" class="toc-content"&gt;
&lt;nav id="toc-nav"&gt;
&lt;ul id="toc-list"&gt;&lt;/ul&gt;
&lt;/nav&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;style&gt;
.floating-toc {
position: fixed;
right: 2rem;
top: 120px;
width: 280px;
z-index: 0;
background: rgba(255, 255, 255, 0.5);
backdrop-filter: blur(8px);
border: 2px solid rgb(var(--color-primary-400));
border-radius: 0.5rem;
box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}
.dark .floating-toc {
background: rgb(var(--color-neutral-800));
border-color: rgb(var(--color-primary-600));
}
.toc-toggle {
width: 100%;
padding: 0.75rem 1rem;
background: rgba(var(--color-primary-600), 0.3);
color: white;
border: none;
border-radius: 0.5rem 0.5rem 0 0;
cursor: pointer;
font-weight: 600;
text-align: left;
display: flex;
align-items: center;
gap: 0.5rem;
transition: background 0.2s;
}
.toc-toggle:hover {
background: rgb(var(--color-primary-700));
}
.toc-content {
max-height: 70vh;
overflow-y: auto;
padding: 1rem;
display: block;
}
.toc-content.hidden {
display: none;
}
.floating-toc nav ul {
list-style: none;
padding-left: 0;
margin: 0;
}
.floating-toc nav ul ul {
padding-left: 1rem;
margin-top: 0.25rem;
}
.floating-toc nav li {
margin-bottom: 0.5rem;
font-size: 0.875rem;
}
.floating-toc nav a {
color: rgb(var(--color-neutral-700));
text-decoration: none;
transition: color 0.2s;
display: block;
}
.floating-toc nav a:hover {
color: rgb(var(--color-primary-600));
}
.dark .floating-toc nav a {
color: rgb(var(--color-neutral-300));
}
.dark .floating-toc nav a:hover {
color: rgb(var(--color-primary-400));
}
@media (min-width: 1280px) and (max-width: 1600px) {
.floating-toc {
right: 1rem;
}
}
@media (min-width: 1600px) {
.floating-toc {
right: calc((100vw - 1200px) / 2 - 320px);
}
}
@media (max-width: 1280px) {
.floating-toc {
display: none;
}
}
.toc-content::-webkit-scrollbar {
width: 6px;
}
.toc-content::-webkit-scrollbar-track {
background: rgba(0,0,0,0.05);
}
.toc-content::-webkit-scrollbar-thumb {
background: rgba(0,0,0,0.4);
border-radius: 10px;
}
&lt;/style&gt;
&lt;script&gt;
document.addEventListener('DOMContentLoaded', function() {
const toggle = document.getElementById('toc-toggle');
const content = document.getElementById('toc-content');
const icon = document.getElementById('toc-icon');
if (toggle &amp;&amp; content &amp;&amp; icon) {
toggle.addEventListener('click', function() {
content.classList.toggle('hidden');
icon.textContent = content.classList.contains('hidden') ? '☰' : '✕';
});
}
const tocList = document.getElementById('toc-list');
if (tocList) {
const contentArea = document.querySelector('.project-content, article, main');
if (!contentArea) return;
const predefinedSections = [
{ id: 'about', label: 'About' },
{ id: 'process', label: 'Process' },
{ id: 'documentation', label: 'Documentation' },
{ id: 'press', label: 'Press' },
{ id: 'credits', label: 'Credits' },
{ id: 'related', label: 'Related' }
];
predefinedSections.forEach(function(section) {
const element = document.getElementById(section.id);
if (element) {
const li = document.createElement('li');
li.id = section.id + '-item';
const link = document.createElement('a');
link.href = '#' + section.id;
link.textContent = section.label;
li.appendChild(link);
tocList.appendChild(li);
}
});
const headings = contentArea.querySelectorAll('h2');
const predefinedIds = predefinedSections.map(s =&gt; s.id);
headings.forEach(function(heading) {
if (!heading.id) {
heading.id = heading.textContent.toLowerCase()
.replace(/[^a-z0-9]+/g, '-')
.replace(/(^-|-$)/g, '');
}
if (predefinedIds.includes(heading.id)) {
return;
}
const li = document.createElement('li');
const link = document.createElement('a');
link.href = '#' + heading.id;
link.textContent = heading.textContent;
li.appendChild(link);
tocList.appendChild(li);
});
const galleries = document.querySelectorAll('.gallery-box h3');
const documentationItem = document.getElementById('documentation-item');
if (galleries.length &gt; 0 &amp;&amp; documentationItem) {
const submenu = document.createElement('ul');
galleries.forEach(function(gallery, index) {
const title = gallery.textContent;
const anchor = 'gallery-' + index;
gallery.id = anchor;
const li = document.createElement('li');
const link = document.createElement('a');
link.href = '#' + anchor;
link.textContent = title;
li.appendChild(link);
submenu.appendChild(li);
});
documentationItem.appendChild(submenu);
}
} else {
const tocNav = document.querySelector('#toc-nav');
if (tocNav) {
const blogGalleries = document.querySelectorAll('.blog-gallery-box h3');
if (blogGalleries.length &gt; 0) {
let blogTocList = tocNav.querySelector('ul');
if (!blogTocList) {
blogTocList = document.createElement('ul');
tocNav.appendChild(blogTocList);
}
blogGalleries.forEach(function(gallery, index) {
const title = gallery.textContent;
if (!gallery.id) {
gallery.id = 'blog-gallery-' + index;
}
const li = document.createElement('li');
const link = document.createElement('a');
link.href = '#' + gallery.id;
link.textContent = title;
li.appendChild(link);
blogTocList.appendChild(li);
});
}
}
}
});
&lt;/script&gt;
&lt;h2 class="relative group"&gt;About
&lt;div id="about" class="anchor"&gt;&lt;/div&gt;
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
&lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#about" aria-label="Anchor"&gt;#&lt;/a&gt;
&lt;/span&gt;
&lt;/h2&gt;
&lt;p&gt;I made live visuals for Evil Medvěd&amp;rsquo;s modular set at Lunchmeat Festival 2020. The visuals came from my visual language around self, identity and social action - reacting to what Evil Medvěd was doing live. With live manipulation of the visuals using a MIDI keyboard, I was able to react in realtime, creating a sequence of images that occurred only once within the confines of this set.&lt;/p&gt;</description></item><item><title>#jpeg2dicom</title><link>https://keyasinghkya.github.io/projects/neither/jpeg2dicom/</link><pubDate>Wed, 01 Apr 2020 00:00:00 +0000</pubDate><guid>https://keyasinghkya.github.io/projects/neither/jpeg2dicom/</guid><description>&lt;p&gt;Ongoing experiments using a CT scan reader to compress video frames into objects that can be manipulated in 3D. This curiosity was born while attending an online workshop, &amp;ldquo;Creative and Artistic Use of Medical Imagery&amp;rdquo; led by Haraldur Karlsson and organised by Vašulka Kitchen Brno in April-May 2020.&lt;/p&gt;
&lt;a href="https://www.facebook.com/groups/265164758212506" target="_blank"&gt;
&lt;img src="https://keyasinghkya.github.io/images/vkb-workshop.png" alt="VKB Workshop facebook group"&gt;
&lt;/a&gt;
&lt;p&gt;Since the workshop, I have been testing material in terms of footage (filmed, found, images in motion) and colours. My aim for the future is to convert these objects into 3D files that can be used in 3D and VR environments.&lt;/p&gt;</description></item></channel></rss>