How to create a new dicom image with annotations from other?How can I safely create a nested directory?How to randomly select an item from a list?How to remove an element from a list by index?How do you read from stdin?Efficiently re-shaping a numpy ndarray from 2-D to 3-D based on elements from 2-DConvert DICOM to TIFFHow to remove a key from a Python dictionary?Representing and solving a maze given an imagehow to replace pixel data on same dicom file using pydicom to read it again with any dicom viewer?Using dicom Images with OpenCV in Python

Is there a method for differentiating informative comments from commented out code?

What's it called when the bad guy gets eaten?

Swapping "Good" and "Bad"

Can a landlord force all residents to use the landlord's in-house debit card accounts?

How to build up towards a "Moment of Reckoning" when my story is told in the first person?

What does the multimeter dial do internally?

What happens to unproductive professors?

Write a function

What is the problem here?(all integers are irrational proof...i think so)

When did "&" stop being taught alongside the alphabet?

Why is a mixture of two normally distributed variables only bimodal if their means differ by at least two times the common standard deviation?

What is the identity for Tuples?

VHF 50 Ω Antenna Over 75 Ω TV Coax

My previous employer committed a severe violation of the law and is also being sued by me. How do I explain the situation to future employers?

How does the Melf's Minute Meteors spell interact with the Evocation wizard's Sculpt Spells feature?

Performance issue in code for reading line and testing for palindrome

Bold and Colored Image Caption

No Torah = Revert to Nothingness?

Need a non-volatile memory IC with near unlimited read/write operations capability

How was the Shuttle loaded and unloaded from its carrier aircraft?

Did the Ottoman empire suppress the printing press?

What was this character's plan?

Distance between horizontal tree levels

Is it ok for parents to kiss and romance with each other while their 2- to 8-year-old child watches?



How to create a new dicom image with annotations from other?


How can I safely create a nested directory?How to randomly select an item from a list?How to remove an element from a list by index?How do you read from stdin?Efficiently re-shaping a numpy ndarray from 2-D to 3-D based on elements from 2-DConvert DICOM to TIFFHow to remove a key from a Python dictionary?Representing and solving a maze given an imagehow to replace pixel data on same dicom file using pydicom to read it again with any dicom viewer?Using dicom Images with OpenCV in Python






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








0















I would like to create two pydicom file from one. But I can't save file in *.dcm format with annotations.



import pydicom
from pydicom.data import get_testdata_files
# read the dicom file
ds = pydicom.dcmread(test_image_fps[0])
# find the shape of your pixel data
shape = ds.pixel_array.shape
# get the half of the x dimension. For the y dimension use shape[0]
half_x = int(shape[1] / 2)
# slice the halves
# [first_axis, second_axis] so [:,:half_x] means slice all from first axis, slice 0 to half_x from second axis
data = ds.pixel_array[:, :half_x]
print('The image has x '.format(data.shape[0],
data.shape[1]))

# print the image information given in the dataset
print(data)
data.save_as("/my/path/after.dcm")


'numpy.ndarray' object has no attribute 'save_as









share|improve this question






























    0















    I would like to create two pydicom file from one. But I can't save file in *.dcm format with annotations.



    import pydicom
    from pydicom.data import get_testdata_files
    # read the dicom file
    ds = pydicom.dcmread(test_image_fps[0])
    # find the shape of your pixel data
    shape = ds.pixel_array.shape
    # get the half of the x dimension. For the y dimension use shape[0]
    half_x = int(shape[1] / 2)
    # slice the halves
    # [first_axis, second_axis] so [:,:half_x] means slice all from first axis, slice 0 to half_x from second axis
    data = ds.pixel_array[:, :half_x]
    print('The image has x '.format(data.shape[0],
    data.shape[1]))

    # print the image information given in the dataset
    print(data)
    data.save_as("/my/path/after.dcm")


    'numpy.ndarray' object has no attribute 'save_as









    share|improve this question


























      0












      0








      0


      0






      I would like to create two pydicom file from one. But I can't save file in *.dcm format with annotations.



      import pydicom
      from pydicom.data import get_testdata_files
      # read the dicom file
      ds = pydicom.dcmread(test_image_fps[0])
      # find the shape of your pixel data
      shape = ds.pixel_array.shape
      # get the half of the x dimension. For the y dimension use shape[0]
      half_x = int(shape[1] / 2)
      # slice the halves
      # [first_axis, second_axis] so [:,:half_x] means slice all from first axis, slice 0 to half_x from second axis
      data = ds.pixel_array[:, :half_x]
      print('The image has x '.format(data.shape[0],
      data.shape[1]))

      # print the image information given in the dataset
      print(data)
      data.save_as("/my/path/after.dcm")


      'numpy.ndarray' object has no attribute 'save_as









      share|improve this question
















      I would like to create two pydicom file from one. But I can't save file in *.dcm format with annotations.



      import pydicom
      from pydicom.data import get_testdata_files
      # read the dicom file
      ds = pydicom.dcmread(test_image_fps[0])
      # find the shape of your pixel data
      shape = ds.pixel_array.shape
      # get the half of the x dimension. For the y dimension use shape[0]
      half_x = int(shape[1] / 2)
      # slice the halves
      # [first_axis, second_axis] so [:,:half_x] means slice all from first axis, slice 0 to half_x from second axis
      data = ds.pixel_array[:, :half_x]
      print('The image has x '.format(data.shape[0],
      data.shape[1]))

      # print the image information given in the dataset
      print(data)
      data.save_as("/my/path/after.dcm")


      'numpy.ndarray' object has no attribute 'save_as






      python pydicom






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 26 at 0:45







      Badum

















      asked Mar 25 at 23:38









      BadumBadum

      407 bronze badges




      407 bronze badges






















          1 Answer
          1






          active

          oldest

          votes


















          0














          Info on this can be foud in the pydicom documentation.

          Remark on "your" ;) code: data = ds.pixel_array[:, :half_x] assigns a view of the numpy.ndarray that is ds.pixel_array to data. Calling data.save_as() expectedly fails because that is an attribute of ds not data. As per the documentation you need to write to the ds.PixelData attribute like so:



          ds.PixelData = data.tobytes() # where data is a numpy.ndarray or a view of an numpy.ndarray

          # if the shape of your pixel data changes ds.Rows and ds.Columns must be updated,
          # otherwise calls to ds.pixel_array.shape will fail
          ds.Rows = 512 # update with correct number of rows
          ds.Columns = 512 # update with the correct number of columns
          ds.save_as("/my/path/after.dcm")





          share|improve this answer






















            Your Answer






            StackExchange.ifUsing("editor", function ()
            StackExchange.using("externalEditor", function ()
            StackExchange.using("snippets", function ()
            StackExchange.snippets.init();
            );
            );
            , "code-snippets");

            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "1"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );













            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55347918%2fhow-to-create-a-new-dicom-image-with-annotations-from-other%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            Info on this can be foud in the pydicom documentation.

            Remark on "your" ;) code: data = ds.pixel_array[:, :half_x] assigns a view of the numpy.ndarray that is ds.pixel_array to data. Calling data.save_as() expectedly fails because that is an attribute of ds not data. As per the documentation you need to write to the ds.PixelData attribute like so:



            ds.PixelData = data.tobytes() # where data is a numpy.ndarray or a view of an numpy.ndarray

            # if the shape of your pixel data changes ds.Rows and ds.Columns must be updated,
            # otherwise calls to ds.pixel_array.shape will fail
            ds.Rows = 512 # update with correct number of rows
            ds.Columns = 512 # update with the correct number of columns
            ds.save_as("/my/path/after.dcm")





            share|improve this answer



























              0














              Info on this can be foud in the pydicom documentation.

              Remark on "your" ;) code: data = ds.pixel_array[:, :half_x] assigns a view of the numpy.ndarray that is ds.pixel_array to data. Calling data.save_as() expectedly fails because that is an attribute of ds not data. As per the documentation you need to write to the ds.PixelData attribute like so:



              ds.PixelData = data.tobytes() # where data is a numpy.ndarray or a view of an numpy.ndarray

              # if the shape of your pixel data changes ds.Rows and ds.Columns must be updated,
              # otherwise calls to ds.pixel_array.shape will fail
              ds.Rows = 512 # update with correct number of rows
              ds.Columns = 512 # update with the correct number of columns
              ds.save_as("/my/path/after.dcm")





              share|improve this answer

























                0












                0








                0







                Info on this can be foud in the pydicom documentation.

                Remark on "your" ;) code: data = ds.pixel_array[:, :half_x] assigns a view of the numpy.ndarray that is ds.pixel_array to data. Calling data.save_as() expectedly fails because that is an attribute of ds not data. As per the documentation you need to write to the ds.PixelData attribute like so:



                ds.PixelData = data.tobytes() # where data is a numpy.ndarray or a view of an numpy.ndarray

                # if the shape of your pixel data changes ds.Rows and ds.Columns must be updated,
                # otherwise calls to ds.pixel_array.shape will fail
                ds.Rows = 512 # update with correct number of rows
                ds.Columns = 512 # update with the correct number of columns
                ds.save_as("/my/path/after.dcm")





                share|improve this answer













                Info on this can be foud in the pydicom documentation.

                Remark on "your" ;) code: data = ds.pixel_array[:, :half_x] assigns a view of the numpy.ndarray that is ds.pixel_array to data. Calling data.save_as() expectedly fails because that is an attribute of ds not data. As per the documentation you need to write to the ds.PixelData attribute like so:



                ds.PixelData = data.tobytes() # where data is a numpy.ndarray or a view of an numpy.ndarray

                # if the shape of your pixel data changes ds.Rows and ds.Columns must be updated,
                # otherwise calls to ds.pixel_array.shape will fail
                ds.Rows = 512 # update with correct number of rows
                ds.Columns = 512 # update with the correct number of columns
                ds.save_as("/my/path/after.dcm")






                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Mar 27 at 12:56









                g_uintg_uint

                97611 silver badges24 bronze badges




                97611 silver badges24 bronze badges


















                    Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.







                    Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.



















                    draft saved

                    draft discarded
















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55347918%2fhow-to-create-a-new-dicom-image-with-annotations-from-other%23new-answer', 'question_page');

                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Kamusi Yaliyomo Aina za kamusi | Muundo wa kamusi | Faida za kamusi | Dhima ya picha katika kamusi | Marejeo | Tazama pia | Viungo vya nje | UrambazajiKuhusu kamusiGo-SwahiliWiki-KamusiKamusi ya Kiswahili na Kiingerezakuihariri na kuongeza habari

                    Swift 4 - func physicsWorld not invoked on collision? The Next CEO of Stack OverflowHow to call Objective-C code from Swift#ifdef replacement in the Swift language@selector() in Swift?#pragma mark in Swift?Swift for loop: for index, element in array?dispatch_after - GCD in Swift?Swift Beta performance: sorting arraysSplit a String into an array in Swift?The use of Swift 3 @objc inference in Swift 4 mode is deprecated?How to optimize UITableViewCell, because my UITableView lags

                    Access current req object everywhere in Node.js ExpressWhy are global variables considered bad practice? (node.js)Using req & res across functionsHow do I get the path to the current script with Node.js?What is Node.js' Connect, Express and “middleware”?Node.js w/ express error handling in callbackHow to access the GET parameters after “?” in Express?Modify Node.js req object parametersAccess “app” variable inside of ExpressJS/ConnectJS middleware?Node.js Express app - request objectAngular Http Module considered middleware?Session variables in ExpressJSAdd properties to the req object in expressjs with Typescript