日韩精品一区二区三区高清_久久国产热这里只有精品8_天天做爽夜夜做爽_一本岛在免费一二三区

合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

代寫COP3502、Python程序設計代做
代寫COP3502、Python程序設計代做

時間:2024-10-23  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



 
P2: RLE with Images Python 
 
Overview 
 
In this project students will develop routines to encode and decode data for images using run-length encoding 
(RLE). Students will implement encoding and decoding of raw data, conversion between data and strings, and 
display of information by creating procedures that can be called from within their programs and externally. This 
project will give students practice with loops, strings, Python lists, methods, and type-casting. 
 
Run-Length Encoding 
 
RLE is a form of lossless compression used in many industry applications, including imaging. It is intended to 
take advantage of datasets where elements (such as bytes or characters) are repeated several times in a row in 
certain types of data (such as pixel art in games). Black pixels often appear in long “runs” in some animation 
frames; instead of representing each black pixel individually, the color is recorded once, following by the number 
of instances. 
 
For example, consider the first row of pixels from the pixel image of a gator 
(shown in Figure 1). The color black is “0”, and green is “2”: 
 
Flat (unencoded) data: 0 0 2 2 2 0 0 0 0 0 0 2 2 0_ 
 
Run-length encoded data: 2 0 3 2 6 0 2 2 1 0_. 
Figure 1 – Gator Pixel Image 
 
The encoding for the entire image in RLE (in hexadecimal) – width, height, and pixels - is: 
 
 
1E|**0**602220121F10721AF21092301210**60**308250 
 
\W/ \H/ \------------------------------------------PIXELS-----------------------------------------------/ 
 
Image Formatting 
 
The images are stored in uncompressed / unencoded format natively. In addition, there are a few other rules to 
make the project more tractable: 
 
 1. Images are stored as a list of numbers, with the first two numbers holding image width and height. 
 
 2. Pixels will be represented by a number between 0 and 15 (representing 16 unique colors). 
3. No run may be longer than 15 pixels; if any pixel runs longer, it should be broken into a new run. 
 
For example, the chubby smiley image (Figure 2) would contain the data shown in Figure 3. 
 
Figure 2 Figure 3 – Data for “Chubby Smiley” 
 
NOTE: Students do not need to work with the image file format itself – they only need to work with lists and 
encode or decode them. Information about image formatting is to provide context. Requirements 
 
Student programs must present a menu when run in standalone mode and must also implement several methods, 
defined below, during this assignment. 
 
Standalone Mode (Menu) 
 
When run as the program driver via the main() method, the program should: 
 
1) Display welcome message 
 
 2) Display color test (ConsoleGfx.test_rainbow) 
3) Display the menu 
4) Prompt for input 
 
Note: for colors to properly display, it is highly recommended that student 
install the “CS1” theme on the project page. 
 
 
There are five ways to load data into the program that should be provided and four ways the program must be 
able to display data to the user. 
 
Loading a File 
 
Accepts a filename from the user and invokes ConsoleGfx.load_file(filename): 
 
Select a Menu Option: 1 
 
Enter name of file to load: testfiles/uga.gfx 
 
Loading the Test Image 
 
Loads ConsoleGfx.test_image: 
Select a Menu Option: 2_ 
Test image data loaded._ 
 
Reading RLE String 
Reads RLE data from the user in hexadecimal notation with delimiters (smiley example): 
 
Select a Menu Option: 3 
 
Enter an RLE string to be decoded: 28:10:6B:10:10B:10:2B:10:12B:10:2B:10:5B:20:11B:10:6B:10 
 
Reading RLE Hex String 
Reads RLE data from the user in hexadecimal notation without delimiters (smiley example): 
 
Select a Menu Option: 4 
 
Enter the hex string holding RLE data: 28106B10AB102B10CB102B105B20BB106B10 
 
Reading Flat Data Hex String 
Reads raw (flat) data from the user in hexadecimal notation (smiley example): 
 
Select a Menu Option: 5 
 
Enter the hex string holding flat data: 
 
880bbbbbb0bbbbbbbbbb0bb0bbbbbbbbbbbb0bb0bbbbb00bbbbbbbbbbb0bbbbbb0 
 
Displaying the Image 
 
Displays the current image by invoking the ConsoleGfx.display_image(image_data) method. 
 
Displaying the RLE String 
 
Converts the current data into a human-readable RLE representation (with delimiters): 
 
Select a Menu Option: 7 RLE representation: 28:10:6b:10:10b:10:2b:10:12b:10:2b:10:5b:20:11b:10:6b:10 
 
Note that each entry is 2-3 characters; the length is always in decimal, and the value in 
hexadecimal! Displaying the RLE Hex Data 
 
Converts the current data into RLE hexadecimal representation (without delimiters): 
 
Select a Menu Option: 8 
 
RLE hex values: 28106b10ab102b10cb102b105b20bb106b10 
 
Displaying the Flat Hex Data 
Displays the current raw (flat) data in hexadecimal representation (without delimiters): 
 
Select a Menu Option: 9 
 
Flat hex values: 880bbbbbb0bbbbbbbbbb0bb0bbbbbbbbbbbb0bb0bbbbb00bbbbbbbbbbb0bbbbbb0 
 
Class Methods 
 
Student classes are required to provide all of the following methods with defined behaviors. We recommend 
completing them in the following order: 
 
1. to_hex_string(data) 
Translates data (RLE or raw) a hexadecimal string (without delimiters). This method can also aid debugging. 
 
Ex: to_hex_string([3, 15, 6, 4]) yields string "3f64". 
 
2. count_runs(flat_data) 
Returns number of runs of data in an image data set; double this result for length of encoded (RLE) list. 
 
Ex: count_runs([15, 15, 15, 4, 4, 4, 4, 4, 4]) yields integer 2. 
 
3. encode_rle(flat_data) 
Returns encoding (in RLE) of the raw data passed in; used to generate RLE representation of a data. 
 
Ex: encode_rle([15, 15, 15, 4, 4, 4, 4, 4, 4]) yields list [3, 15, 6, 4]. 
 
4. get_decoded_length(rle_data) 
Returns decompressed size RLE data; used to generate flat data from RLE encoding. (Counterpart to #2) 
 
Ex: get_decoded_length([3, 15, 6, 4]) yields integer 9. 
 
5. decode_rle(rle_data) 
Returns the decoded data set from RLE encoded data. This decompresses RLE data for use. (Inverse of #3) 
 
Ex: decode_rle([3, 15, 6, 4]) yields list [15, 15, 15, 4, 4, 4, 4, 4, 4]. 
 
6. string_to_data(data_string) 
 
Translates a string in hexadecimal format into byte data (can be raw or RLE). (Inverse of #1) 
 
Ex: string_to_data ("3f64") yields list [3, 15, 6, 4]. 
 
7. to_rle_string(rle_data) 
 
Translates RLE data into a human-readable representation. For each run, in order, it should display the run 
length in decimal (**2 digits); the run value in hexadecimal (1 digit); and a delimiter, ‘:’, between runs. (See 
examples in standalone section.) 
 
Ex: to_rle_string([15, 15, 6, 4]) yields string "15f:64". 
 
8. string_to_rle(rle_string) 
Translates a string in human-readable RLE format (with delimiters) into RLE byte data. (Inverse of #7) 
 
Ex: string_to_rle("15f:64") yields list [15, 15, 6, 4]. Submissions 
 
NOTE: Your output must match the example output *exactly*. If it does not, you will not receive full credit for 
your submission! 
 
File: 
Method: 
 
 
rle_program.py 
 
Submit on ZyLabs 
 
Do not submit any other files! 
 
Part A (5 points) 
 
For part A of this assignment, students will set up the standalone menu alongside the 4 requirements listed on 
page 2 of this document. In addition to this, students should also set up menu options 1 (loading an image), 2 
(loading specifically the test image), and 6 (displaying whatever image was loaded) in order to help grasp the 
bigger picture of the project. 
 
This involves correctly setting up the console_gfx.py file and utilizing its methods. You will use 
ConsoleGfx.display_image(...) to display images. Notice how it takes in a decoded list. This is the 
 
format in which you will locally (in your program) store any image data that you are working with. When 
the document mentions that something is “loaded” it means that something is stored as a list of flat 
(decoded) data. 
 
Part B (60 points) 
 
For part B of this assignment, students will complete the first 6 methods on page 3 of this document. They 
must match specifications and pass test cases on chapter 12.2 in Zybooks, which will be your means of 
submission for this part of the assignment. Your grade will be the score received on Zybooks. To guarantee 
functionality moving forward to part C, it is expected that you will receive full marks for this section. 
 
Part C (35 points) 
 
For part C of this assignment, students will now complete the final 2 methods on page 3 of this document as well 
as the remainder of the project involving the menu options and understanding how all the individual methods are 
intertwined with each other. You will submit your whole program including the 8 methods listed above and the 
main method in chapter 12.3 in Zybooks. We will only test your remaining 2 methods and the main method in 
part C. 


請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp





 

掃一掃在手機打開當前頁
  • 上一篇:代寫ECE 4122、代做C++編程語言
  • 下一篇:代寫SD6502、代做C++程序語言
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    2025年10月份更新拼多多改銷助手小象助手多多出評軟件
    2025年10月份更新拼多多改銷助手小象助手多
    有限元分析 CAE仿真分析服務-企業/產品研發/客戶要求/設計優化
    有限元分析 CAE仿真分析服務-企業/產品研發
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發動機性能
    挖掘機濾芯提升發動機性能
    海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
    海信羅馬假日洗衣機亮相AWE 復古美學與現代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
  • 短信驗證碼 trae 豆包網頁版入口 目錄網 排行網

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    日韩精品一区二区三区高清_久久国产热这里只有精品8_天天做爽夜夜做爽_一本岛在免费一二三区

      <em id="rw4ev"></em>

        <tr id="rw4ev"></tr>

        <nav id="rw4ev"></nav>
        <strike id="rw4ev"><pre id="rw4ev"></pre></strike>
        国产精品99久久不卡二区| 国产欧美在线观看一区| 国产精品电影在线观看| 国产精品区二区三区日本| 亚洲欧洲精品一区二区三区波多野1战4| 国产精品二区在线观看| 亚洲片区在线| 国内精品视频在线观看| 亚洲视频一区二区在线观看| 亚洲欧美乱综合| 久久婷婷国产综合尤物精品| 国产精品久久久久999| 国产乱人伦精品一区二区| 欧美日韩黄色大片| 亚洲免费一级电影| 国产美女精品在线| 欧美午夜在线一二页| 亚洲色图自拍| 国产在线精品一区二区夜色| 国产精品一区毛片| 国产综合久久久久影院| 亚洲精品国产品国语在线app| 亚洲精品一区在线观看| 欧美日韩成人激情| 亚洲激情第一区| 中文精品一区二区三区| 一区在线视频观看| 久久久久久高潮国产精品视| 亚洲欧美国内爽妇网| 久久亚洲综合色一区二区三区| 99在线视频精品| 在线电影院国产精品| 国产欧美日韩视频| 午夜精品在线| 亚洲国产精品免费| 国产精品久久久亚洲一区| 国产一区二区日韩| 国产精品你懂得| 亚洲精品亚洲人成人网| 亚洲欧美一区二区精品久久久| 国产精品区一区| 欧美一区视频| 夜夜嗨av色综合久久久综合网| 亚洲精品一区二区三区四区高清| 日韩一级精品| 国产精品99久久久久久久久久久久| 欧美午夜精品久久久久久孕妇| 国产美女精品视频| 亚洲网在线观看| 国产亚洲一二三区| 亚洲精品在线二区| 亚洲三级视频| 狠狠色综合网站久久久久久久| 欧美国产激情二区三区| 欧美性视频网站| 欧美午夜在线视频| 欧美二区在线观看| 一区二区三区色| 国产伦理精品不卡| 欧美另类久久久品| 亚洲精品视频在线观看免费| 欧美中文字幕在线观看| 一本一道久久综合狠狠老精东影业| 欧美永久精品| 亚洲欧洲日韩女同| 在线不卡中文字幕播放| 欧美精品久久久久久| 国产精品最新自拍| 黄色成人在线观看| 欧美精品日韩一区| 国语精品中文字幕| 久久午夜色播影院免费高清| 国产精品亚洲不卡a| 美女亚洲精品| 欧美日韩极品在线观看一区| 亚洲电影在线免费观看| 国产精品日本一区二区| 久久国产精品黑丝| 销魂美女一区二区三区视频在线| 亚洲一区二区不卡免费| 午夜精品99久久免费| 激情av一区| 狠狠做深爱婷婷久久综合一区| 亚洲一区在线直播| 欧美激情 亚洲a∨综合| 欧美高清在线精品一区| 91久久极品少妇xxxxⅹ软件| 欧美色另类天堂2015| 一本久久a久久免费精品不卡| 一区二区欧美精品| 精久久久久久| 欧美日韩伊人| 亚洲精品综合久久中文字幕| 欧美一区免费| 欧美三级资源在线| 国产精品www.| 国产日韩欧美在线看| 韩国av一区| 欧美有码视频| 欧美四级伦理在线| 亚洲毛片av| 欧美一区综合| 亚洲国产精品国自产拍av秋霞| 国产精品一区毛片| 亚洲国产精品第一区二区| 亚洲精选视频在线| 国产精品久久久久av| 久久综合中文字幕| 一区二区三区在线不卡| 久热精品视频在线观看| 国产精品色婷婷| 一区二区不卡在线视频 午夜欧美不卡在| 亚洲国产精品99久久久久久久久| 国产精品毛片a∨一区二区三区| 欧美午夜久久久| 亚洲伦理自拍| 欧美高清视频一区二区| 午夜在线观看免费一区| 国产无遮挡一区二区三区毛片日本| 欧美专区日韩视频| 国产精品伊人日日| 免费日本视频一区| 亚洲国产欧洲综合997久久| 好看的日韩视频| 欧美在线一区二区| 久久综合色综合88| 国产情人综合久久777777| 国产精品另类一区| 亚洲一区二区三区精品在线| 99re66热这里只有精品3直播| 亚洲影音一区| 亚洲高清一区二区三区| 国产精品欧美日韩久久| 欧美性大战久久久久| 久久久久久久久久久久久女国产乱| 欧美专区18| 国产精品免费久久久久久| 日韩一区二区久久| 一区二区三区视频在线看| 狠狠色噜噜狠狠狠狠色吗综合| 久久福利精品| 久久亚洲春色中文字幕| 一本色道久久综合一区| 亚洲国产高潮在线观看| 国产亚洲一区在线播放| 亚洲欧美激情在线视频| 国产精品嫩草影院av蜜臀| 老司机一区二区| 国产精品自拍一区| 在线观看亚洲一区| 亚洲男同1069视频| 一本色道久久88综合日韩精品| 国产精品美女| 麻豆精品传媒视频| 亚洲精品欧美日韩专区| 一区二区三区在线视频播放| 国产日韩亚洲欧美精品| 久久久久九九九九| 亚洲一二三四久久| 亚洲福利视频三区| 国产精品日韩精品欧美精品| 在线精品一区二区| 欧美国内亚洲| 久久精品在线视频|