MESSAGE
DATE | 2017-04-09 |
FROM | Ruben Safir
|
SUBJECT | Subject: [Learn] thesis
|
From learn-bounces-at-nylxs.com Sun Apr 9 18:03:22 2017 Return-Path: X-Original-To: archive-at-mrbrklyn.com Delivered-To: archive-at-mrbrklyn.com Received: from www.mrbrklyn.com (www.mrbrklyn.com [96.57.23.82]) by mrbrklyn.com (Postfix) with ESMTP id 29F33161357; Sun, 9 Apr 2017 18:03:22 -0400 (EDT) X-Original-To: learn-at-nylxs.com Delivered-To: learn-at-nylxs.com Received: from mailbackend.panix.com (mailbackend.panix.com [166.84.1.89]) by mrbrklyn.com (Postfix) with ESMTP id E3B3A16133C for ; Sun, 9 Apr 2017 18:03:18 -0400 (EDT) Received: from [10.0.0.62] (www.mrbrklyn.com [96.57.23.82]) by mailbackend.panix.com (Postfix) with ESMTPSA id A0D4A1ABAB; Sun, 9 Apr 2017 18:03:17 -0400 (EDT) To: learn-at-nylxs.com References: <87inmguu53.fsf-at-contrapunctus.net> <243fc0d3-e5a8-4c21-8244-6bb3fb1fe5ef.maildroid-at-localhost> <8bbb95cc-ae73-4300-97d9-33e59b61d035.maildroid-at-localhost> From: Ruben Safir Message-ID: Date: Sun, 9 Apr 2017 18:03:16 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <8bbb95cc-ae73-4300-97d9-33e59b61d035.maildroid-at-localhost> Subject: [Learn] thesis X-BeenThere: learn-at-nylxs.com X-Mailman-Version: 2.1.17 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: quoted-printable Errors-To: learn-bounces-at-nylxs.com Sender: "Learn"
one of the added sections
Dicom Cat Scan Format Dicom is a huge copyright problem promoted as =93the internet of medical information=94. According to its standards page, =93It defines the formats for medical images that can be exchanged with the data and quality necessary for clinical use. =931 It is controlled by The Medical Imaging & Technology Alliance (MITA), a division of the National Electrical Manufacturers Association (NEMA). They claim to be the leading organization and collective voice of medical imaging equipment conglomerate.2 They claim to represent companies whose sales make up more than 90 percent of the global market for advanced imaging technologies. They are not an open forum for digital standards but are created as a profit center for a few select and well placed medical device companies.
There are, nevertheless, some free tools to access some of their formats. On the sourceforge network there is Open Dicom Viewer3 which is licensed under GNU Library or Lesser General Public License version 3.0 (LGPLv3). It is a Java application (written in Java 1.7). Another tool is DCMLinux 4, and it is released under the GPL2. It promotes itself as, =93a complete PACS system, free of charge. Its core is an Ubuntu 10.04 system fully updated and it contains the DCM4CHEE as its PACS server. In the near future it will contain many other addons such as Weasis, Oviyam, Care2x, etc.=94
There is an =93OpenSourced=94 C++ library for dicom with java and python hooks which looks promising for new developers. Called Imebra5, and licensed under the GPL2, and it=92s development is current. =93The Imebra SDK is a multiplatform, open source, C++ library for handling DICOM files, both raw and compressed.=94 It actually has an impressive set of features and looks like it is worth development. It=92s main class is the imebra::DataSet class and it is fully documented. It is compiled with cmake. You need to include imebra/imebra.h, to your source files to access the library. It uses uniqueptr and can open files like this according to the official documentation: std::unique_ptr loadedDataSet(imebra::CodecFactory::load("DicomFile.dcm")); // Retrieve the first image (index =3D 0) std::unique_ptr image(loadedDataSet->getImageApplyModalityTransform(0));
// Get the color space std::string colorSpace =3D image->getColorSpace();
// Get the size in pixels std::uint32_t width =3D image->getWidth(); std::uint32_t height =3D image->getHeight();
// let's assume that we already have the image's size in the variables width and height // (see previous code snippet)
// Retrieve the data handler std::unique_ptr dataHandler(image->getReadingDataHandler());
for(std::uint32 scanY(0); scanY !=3D height; ++scanY) { for(std::uint32 scanX(0); scanX !=3D width; ++scanX) { // For monochrome images std::int32_t luminance =3D dataHandler->getSignedLong(scanY * width + scanX);
// For RGB images std::int32_t r =3D dataHandler->getSignedLong((scanY * width + scanX) * 3); std::int32_t g =3D dataHandler->getSignedLong((scanY * width + scanX) * 3 + 1); std::int32_t b =3D dataHandler->getSignedLong((scanY * width + scanX) * 3 + 2); } }
Dicom has a networking layer in the specification, something that PNG also made room for in its specification. This is a template for views an image: // The transforms chain will contain all the transform that we want to // apply to the image before displaying it imebra::TransformsChain chain;
if(imebra::ColorTransformsFactory::isMonochrome(image->getColorSpace()) { // Allocate a VOILUT transform. If the DataSet does not contain any pre-defined // settings then we will find the optimal ones. VOILUT voilutTransform;
// Retrieve the VOIs (center/width pairs) imebra::vois_t vois =3D loadedDataSet->getVOIs();
// Retrieve the LUTs std::list > luts; for(size_t scanLUTs(0); ; ++scanLUTs) { try {
luts.push_back(loadedDataSet->getLUT(imebra::TagId(imebra::tagId_t::VOILUTS= equence_0028_3010), scanLUTs)); } catch(const imebra::MissingDataElementError&) { break; } }
if(!vois.empty()) { voilutTransform.setCenterWidth(vois[0].center, vois[0].width); } else if(!luts.empty()) { voilutTransform.setLUT(*(luts.front().get())); } else { voilutTransform.applyOptimalVOI(image, 0, 0, width, height); }
chain.add(voilutTransform); }
// If the image is monochromatic then now chain contains the VOILUT transform
// We create a DrawBitmap that always apply the chain transform before getting the RGB image imebra::DrawBitmap draw(chain);
// Ask for the size of the buffer (in bytes) size_t requestedBufferSize =3D draw.getBitmap(image, imebra::drawBitmapType_t::drawBitmapRGBA, 4, 0, 0);
// Now we allocate the buffer and then ask DrawBitmap to fill it std::string buffer(requestedBufferSize, char(0)); draw.getBitmap(image, imebra::drawBitmapType_t::drawBitmapRGBA, 4, &(buffer.at(0)), requestedBufferSize);
On 04/07/2017 06:30 PM, Christopher League wrote: > Looks like they have a lot of good stuff, including interactions between > CS and other fields, and a lot of AI. > =
> What was the lab job that was posted? > =
> CL > =
> -----Original Message----- > From: Ruben Safir > To: Christopher League > Sent: Fri, 07 Apr 2017 18:14 > Subject: Ariel U > =
> I can't find the link I found last week but see here > =
> =
> http://www.ariel.ac.il/images/stories/site/research/Research_Activities_/= Research_Profile_of_AU_2017.pdf > =
>> >> -----Original Message----- >> From: Ruben Safir > >> To: Christopher League > > >> Sent: Fri, 07 Apr 2017 16:41 >> Subject: Re: last corrections >> >> On 04/07/2017 11:14 AM, Christopher League wrote: >>> >>> attached >>> >> >> The running output looks like this. As we can see, the system does learn >> and build a database, but this >> method is slow. I can be adapted to pull into comma separated tables of >> information, if it is thought out >> carefully. Systems like EXPECT used to do this with PTP connections and >> chats. >> Do you mean FTP? >> Maybe add link/citation for EXPECT, >> it's not commonly known anymore. >> >> No - Point to Point like in dial up and ATX command sets... >> >> > =
> =
> -- =
> So many immigrant groups have swept through our town > that Brooklyn, like Atlantis, reaches mythological > proportions in the mind of the world - RI Safir 1998 > http://www.mrbrklyn.com > =
> DRM is THEFT - We are the STAKEHOLDERS - RI Safir 2002 > http://www.nylxs.com - Leadership Development in Free Software > http://www2.mrbrklyn.com/resources - Unpublished Archive > http://www.coinhangout.com - coins! > http://www.brooklyn-living.com > =
> Being so tracked is for FARM ANIMALS and and extermination camps, > but incompatible with living as a free human being. -RI Safir 2013 > =
> =
> =
> _______________________________________________ > Learn mailing list > Learn-at-nylxs.com > http://lists.mrbrklyn.com/mailman/listinfo/learn > =
-- =
So many immigrant groups have swept through our town that Brooklyn, like Atlantis, reaches mythological proportions in the mind of the world - RI Safir 1998 http://www.mrbrklyn.com
DRM is THEFT - We are the STAKEHOLDERS - RI Safir 2002 http://www.nylxs.com - Leadership Development in Free Software http://www2.mrbrklyn.com/resources - Unpublished Archive http://www.coinhangout.com - coins! http://www.brooklyn-living.com
Being so tracked is for FARM ANIMALS and and extermination camps, but incompatible with living as a free human being. -RI Safir 2013 _______________________________________________ Learn mailing list Learn-at-nylxs.com http://lists.mrbrklyn.com/mailman/listinfo/learn
|
|