การประมวลผลข้อมูลล่วงหน้าโดยทั่วไปหมายถึงงานในการรวบรวมข้อมูลทั้งหมด (ซึ่งรวบรวมจากแหล่งข้อมูลต่างๆ หรือทรัพยากรเดียว) ให้อยู่ในรูปแบบทั่วไปหรือเป็นชุดข้อมูลเดียวกัน (ขึ้นอยู่กับประเภทของข้อมูล)
เนื่องจากข้อมูลในโลกแห่งความเป็นจริงไม่เคยอยู่ในอุดมคติ จึงมีความเป็นไปได้ที่ข้อมูลนั้นจะไม่มีเซลล์ ข้อผิดพลาด ค่าผิดปกติ ความคลาดเคลื่อนในคอลัมน์ และอื่นๆ อีกมากมาย
บางครั้ง รูปภาพอาจจัดแนวไม่ถูกต้อง หรืออาจไม่ชัดเจน หรืออาจมีขนาดใหญ่มาก เป้าหมายของการประมวลผลล่วงหน้าคือการขจัดความคลาดเคลื่อนและข้อผิดพลาดเหล่านี้
เพื่อให้ได้พิกเซลของรูปภาพ จะใช้ฟังก์ชันในตัวที่ชื่อว่า 'flatten' หลังจากที่อ่านรูปภาพแล้ว ค่าพิกเซลจะถูกจัดเก็บในรูปแบบของดาต้าเฟรม ฟังก์ชัน 'flatten' ใช้เพื่อแปลงสามมิติของภาพ RGB ให้เป็นมิติเดียว และรับค่าของพิกเซลเป็นดาต้าเฟรม
แทนที่จะพิมพ์ dataframe ทั้งหมด ขนาดของ dataframe จะถูกพิมพ์ ให้เรายกตัวอย่างของการอัปโหลดภาพและรับพิกเซลที่มีอยู่ในภาพเป็นดาต้าเฟรมโดยใช้ไลบรารี scikit-learn -
ตัวอย่าง
from skimage import io import pandas as pd path = "path to puppy.PNG" img = io.imread(path) print("Image being read") io.imshow(img) print("Image printed on console") my_df = pd.DataFrame(img.flatten()) print("The image pixels dimensions are ") print(my_df.shape)
ผลลัพธ์
Image being read Image printed on console The image pixels dimensions are (886104, 1)
คำอธิบาย
-
นำเข้าไลบรารีที่จำเป็น
-
เส้นทางที่จัดเก็บภาพถูกกำหนดไว้
-
ฟังก์ชัน "imread" ใช้เพื่อเข้าชมเส้นทางและอ่านรูปภาพ
-
ฟังก์ชัน 'imshow' ใช้เพื่อแสดงรูปภาพบนคอนโซล
-
ฟังก์ชัน 'flatten' ใช้เพื่อแปลงสามมิติของภาพ RGB ให้เป็นมิติเดียว และรับค่าของพิกเซลเป็นดาต้าเฟรม
-
แทนที่จะพิมพ์ dataframe ที่มีแถวมากเกินไป ขนาดของ dataframe จะแสดงขึ้น
-
สามารถดู dataframe ได้โดยใช้ 'print(my_df)' .
-
เอาต์พุตเป็นดาต้าเฟรมที่มีค่าพิกเซลของภาพที่พิมพ์บนคอนโซล