<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          習(xí)題改編之計(jì)算圖像存儲(chǔ)容量

          共 2391字,需瀏覽 5分鐘

           ·

          2023-07-03 12:29

          說在前面

          命題是一線教師的基本任務(wù),也是工作難點(diǎn)。創(chuàng)作一道科學(xué)性和原創(chuàng)性俱佳的好題是可遇不可求的事情。更常見的做法是博采眾長,對原有題目做一定程度的改編。那么,如何改編題目呢?

          筆者嘗試通過一些案例,把自己改編題目的思路和方法與大家分享。若有不當(dāng)之處,歡迎各位老師批評指正。

          360ffa053eacee875ed6a685f9f8cfb5.webp

          原題展示:

          一幅未經(jīng)壓縮的1025*256像素的BMP圖像,每個(gè)像素的顏色均不同,其存儲(chǔ)容量至少約為(?? )

          A.768KB? ? ?

          B. 512KB ???

          C. 576KB????

          D. 609KB


          答案: D 解析:此題難點(diǎn)在于求位深度。因?yàn)槊總€(gè)像素的顏色均不同,故顏色總量為1025*256<2^19,故位深度為19。 存儲(chǔ)容量為1025*256*19/8/1024=609KB。


          改編思路:

          原題是一道經(jīng)典的計(jì)算圖像存儲(chǔ)容量的題目。教材中給出了計(jì)算BMP圖像存儲(chǔ)容量的公式:存儲(chǔ)容量=總像素x顏色位深度(單位:位),一般情況下只需將各參數(shù)值代入公式計(jì)算即可。本題難點(diǎn)在于顏色位深度未知,需要根據(jù)顏色總量來計(jì)算位深度,其中用到了十進(jìn)制轉(zhuǎn)二進(jìn)制算法。 為了幫助學(xué)生深度理解進(jìn)制和編碼相關(guān)知識(shí)點(diǎn),我們可以將此題改編成非選擇題,把圖像數(shù)字化和計(jì)算存儲(chǔ)容量公式作為背景信息介紹給學(xué)生,通過問題串的方式讓學(xué)生逐步思考計(jì)算位深度和圖像存儲(chǔ)容量的方法,并把進(jìn)制轉(zhuǎn)換作為考查重點(diǎn),以填空和改錯(cuò)的方式考查十進(jìn)制轉(zhuǎn)二進(jìn)制的算法。

          改編題:

          將圖像數(shù)字化需要經(jīng)過采樣、量化、編碼等環(huán)節(jié)。 圖像的量化是指要使用多大范圍的數(shù) 值來表示圖像采樣之后每個(gè)像素的顏色信息,一般用二進(jìn)制數(shù)來表示,其長度也稱為顏色的位深度。 256 種顏色的圖像,它的位深度為 8 位。

          圖像存儲(chǔ)容量計(jì)算公式:存儲(chǔ)容量=總像素x顏色位深度(單位:位)

          已知某BMP圖像的每個(gè)像素的顏色均不同,試根據(jù)其寬度和高度計(jì)算最小存儲(chǔ)容量。相關(guān)程序如下,請仔細(xì)閱讀代碼,回答問題。

          def d2b(n):? ? ? s = "" ? ? while n > 0: ? ? ? ? r = ① ? ? ? ? s = str(r) + s ? ? ? ? n = ② ? ? return s w = int(input("請輸入圖像寬度:")) h = int(input("請輸入圖像高度:")) d = len(d2b(w * h))+1? ?#?此為加框處代碼,計(jì)算最小位深度 c = ③? ?# 注意單位為KB print("該BMP圖像的最小存儲(chǔ)容量為", round(c), "KB")

          (1)已知函數(shù)d2b()的功能是將十進(jìn)制正整數(shù)n轉(zhuǎn)換成二進(jìn)制數(shù)字符串,請將代碼補(bǔ)充完整。

          (2)已知加框處代碼有誤,其代碼應(yīng)改為 (? ???)

          A. len(d2b(w * h))?

          B. len(d2b(w * h))-1???

          C. len(d2b(w * h - 1))???

          (3)若該BMP圖像的寬、高分別為128、64,則其位深度至少為 ???? (填數(shù)字)

          (4)若該BMP圖像的寬、高分別為1025、256,則其存儲(chǔ)容量至少約為(?? )

          A.768KB?

          B. 512KB???

          C. 576KB???? D. 609KB


          答案: (1)① n % 2?

          ② n // 2?

          ③ w * h * d / 8 / 1024

          (2)C?

          (3)13?

          (4)D

          解析: 略。 (詳見Python算法之旅知識(shí)星球)

          需要本文word文檔、源代碼和課后練習(xí)答案的,可以加入 “Python算法之旅”知識(shí)星球 參與討論和下載文件, Python算法之旅”知識(shí)星球 匯集了數(shù)量眾多的同好,更多有趣的話題在這里討論,更多有用的資料在這里分享。

          我們專注Python算法,感興趣就一起來!

          相關(guān)優(yōu)秀文章:

          閱讀代碼和寫更好的代碼

          最有效的學(xué)習(xí)方式

          Python算法之旅文章分類

          瀏覽 161
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日本中文字幕精品 | 大香蕉视频网站 | 大香蕉人人 | 成人视频日本 | 四虎二区|