<div dir="ltr"><div style="font-size:12.8px"><span style="font-size:12.8px">Hey Josh - it would be far better for us if we could get access to full vs. a partial datasets.  Given that, to verify that I'm understanding how to retrieve raw data correctly, could you confirm that something like the following code is your suggestion for using the Python API to download raw image data:</span></div><div style="font-size:12.8px"><span style="font-size:12.8px"><br></span></div><div style="font-size:12.8px"><pre style="white-space:pre-wrap;overflow-x:auto;overflow-y:hidden;font-family:consolas,"deja vu sans mono","bitstream vera sans mono",monospace;font-size:14px;letter-spacing:0.015em;line-height:16.8px;padding:0.5em;border:1px solid rgb(204,204,204);background-color:rgb(241,241,241);max-width:60em"><span class="gmail-m_-1032627558041312740gmail-m_7863450187489195317gmail-n" style="color:rgb(0,0,0)">from PIL import Image</span><font color="#000000">
</font><span class="gmail-m_-1032627558041312740gmail-m_7863450187489195317gmail-n" style="color:rgb(0,0,0)"># Do the following for each imageId we have in the dataset.</span><font color="#000000">
</font><span class="gmail-m_-1032627558041312740gmail-m_7863450187489195317gmail-n" style="color:rgb(0,0,0)">image = conn.getObject("Image", imageId)</span><font color="#000000"><br></font><span class="gmail-m_-1032627558041312740gmail-m_7863450187489195317gmail-n" style="color:rgb(0,0,0)">for z in range(image.getSizeZ()):</span><font color="#000000"><br></font><span class="gmail-m_-1032627558041312740gmail-m_7863450187489195317gmail-n" style="color:rgb(0,0,0)">  for c in range(image.getSizeC()):</span><font color="#000000"><br></font><span class="gmail-m_-1032627558041312740gmail-m_7863450187489195317gmail-n" style="color:rgb(0,0,0)">    for t in range(image.getSizeT()):</span><font color="#000000">
</font><font color="#000000">      pixels = image.getPrimaryPixels()
</font><span class="gmail-m_-1032627558041312740gmail-m_7863450187489195317gmail-n"><font color="#007020"><b>      </b></font><font color="#000000">plane = pixels.getPlane(z, c, t)  </font># Get a numpy array.</span><font color="#000000">
</font><font color="#007020"><b>     </b></font><font color="#000000"> im = Image.fromArray(</font><span class="gmail-m_-1032627558041312740gmail-m_7863450187489195317gmail-n" style="color:rgb(0,0,0)">plane</span><span class="gmail-m_-1032627558041312740gmail-m_7863450187489195317gmail-n"><font color="#666666">)  # Using PIL.Image</font></span>y array.</pre><pre style="white-space:pre-wrap;overflow-x:auto;overflow-y:hidden;font-family:consolas,"deja vu sans mono","bitstream vera sans mono",monospace;font-size:14px;letter-spacing:0.015em;line-height:16.8px;padding:0.5em;border:1px solid rgb(204,204,204);background-color:rgb(241,241,241);max-width:60em"><font color="#007020" style="letter-spacing:0.015em"><b>     </b></font><font color="#000000" style="letter-spacing:0.015em"> im.save("image.tiff")</font></pre></div><div class="gmail_extra" style="font-size:12.8px"><span style="font-size:12.8px">Also, it looks like a valid username and password are required to open a connection to your server.  How do we go about getting one?</span><br></div><div class="gmail_extra" style="font-size:12.8px"><span style="font-size:12.8px"><br></span></div><div class="gmail_extra" style="font-size:12.8px"><span style="font-size:12.8px">Thanks.</span></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, May 3, 2017 at 3:11 PM, Josh Moore <span dir="ltr"><<a href="mailto:josh@glencoesoftware.com" target="_blank">josh@glencoesoftware.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Jon,<br>
<span class=""><br>
On Mon, May 1, 2017 at 11:50 PM, Jon Hazard <<a href="mailto:jhazard@google.com">jhazard@google.com</a>> wrote:<br>
> Hi Josh - replies to your questions inline below<br>
><br>
> On Mon, May 1, 2017 at 1:19 PM, Josh Moore <<a href="mailto:josh@glencoesoftware.com">josh@glencoesoftware.com</a>> wrote:<br>
>><br>
>> (List members: sorry for the re-send)<br>
>><br>
>> On Fri, Apr 28, 2017 at 8:07 PM, Jon Hazard <<a href="mailto:jhazard@google.com">jhazard@google.com</a>> wrote:<br>
>> > Hello - first, a hearty thanks to OME for making this data available!<br>
>><br>
>> Gladly! And glad to you're interesting in using it.<br>
>><br>
>><br>
>> > My team is interested in the images from two datasets:<br>
>> ><br>
>> > idr0033-rohban-pathways/<wbr>screenA<br>
>> ><br>
>> > and<br>
>> ><br>
>> > idr0028-pascualvargas-<wbr>rhogtpases<br>
>> ><br>
>> > It looks like the images for at least the first data set are compressed.<br>
>><br>
>> How do you mean compressed? (Can you send a link?) The original data<br>
>> has been uploaded to the IDR but certainly for viewing, rendering is<br>
>> performed server-side before sending to the client.<br>
><br>
><br>
> To clarify, I meant that the images I can obtain are lower-resolution JPGs<br>
> rather than the original-quality TIFF files. This is true whether I export<br>
> through either the individual image download (by clicking the Down Arrow as<br>
> shown in the first section of the export help page<br>
> <a href="http://help.openmicroscopy.org/export.html" rel="noreferrer" target="_blank">http://help.openmicroscopy.<wbr>org/export.html</a>) or by using the public web API<br>
> (e.g. by issuing the following command: curl<br>
> "<a href="http://idr-demo.openmicroscopy.org/webclient/render_image/3194301/?c=1&q=1" rel="noreferrer" target="_blank">http://idr-demo.<wbr>openmicroscopy.org/webclient/<wbr>render_image/3194301/?c=1&q=1</a>"<br>
>> image.jpg).<br>
<br>
</span>I understand: there's not yet a webclient/ or webgateway/ yet that<br>
would return raw image planes. Our other APIs (e.g. Python, Java, C++)<br>
do. See below.<br>
<span class=""><br>
<br>
>> > It would help us a lot to be able to work with the raw, uncompressed<br>
>> > images.<br>
>> > Are those available?<br>
>><br>
>> Can you explain more about what you are trying to achieve? We're<br>
>> working on having full download enabled from EBI but until then we<br>
>> should be able to get you access to something more significant.<br>
><br>
><br>
> I would like to have access to the original-quality images for all images in<br>
> the two datasets I mentioned previously:<br>
><br>
>> idr0028-pascualvargas-<wbr>rhogtpases and idr0033-rohban-pathways/<wbr>screenA<br>
><br>
> That is great that the full downloads will eventually be supported through<br>
> EBI. Is there an expected timeframe for that capability to come online?<br>
<br>
</span>I've checked on the status, but there's not yet a concrete date. My<br>
guess would be that it'll be on the order of weeks rather than months.<br>
<span class=""><br>
<br>
> Assuming that there is some non-trivial infrastructure required there, is<br>
> there any other way that we could have access to those two datasets in a<br>
> more timely manner?<br>
<br>
</span>The OME project regularly makes sample data available for download [1]<br>
. To at least unblock you initially, I'd propose putting one plate for<br>
each study up on the downloads site (10GB and 40GB respectively), but<br>
we'd certainly like to avoid mirroring the dozens of TBs from IDR via<br>
that mechanism. One short-term option for accessing all the plate data<br>
would be for you to make use of our jupyter instance[2]. See<br>
<a href="https://github.com/IDR/idr-notebooks" rel="noreferrer" target="_blank">https://github.com/IDR/idr-<wbr>notebooks</a> for examples.<br>
<br>
All the best,<br>
~Josh<br>
<br>
[1] <a href="https://downloads.openmicroscopy.org/images/" rel="noreferrer" target="_blank">https://downloads.<wbr>openmicroscopy.org/images/</a><br>
[2] <a href="https://idr.openmicroscopy.org/jupyter" rel="noreferrer" target="_blank">https://idr.openmicroscopy.<wbr>org/jupyter</a><br>
</blockquote></div><br></div>