Bắt đầu ngayBắt đầu miễn phí

Biểu đồ tần suất (Histograms)

Biểu đồ tần suất (histogram) cho thấy phân bố giá trị trong ảnh của bạn bằng cách gom mỗi phần tử theo mức cường độ và đo kích thước của từng thùng (bin).

Diện tích dưới biểu đồ tần suất được gọi là hàm phân phối tích lũy. Nó đo tần suất xuất hiện của một khoảng cường độ điểm ảnh nhất định.

Trong bài này, hãy mô tả phân bố cường độ trong im bằng cách tính biểu đồ tần suất và hàm phân phối tích lũy, rồi hiển thị chúng cùng nhau.

Bài tập này là một phần của khóa học

Phân tích ảnh Y sinh học bằng Python

Xem khóa học

Hướng dẫn bài tập

  • Import scipy.ndimage với bí danh ndi.
  • Tạo biểu đồ 256 bin cho im bao phủ toàn bộ dải giá trị của np.uint8.
  • Tính hàm phân phối tích lũy cho im. Trước tiên, lấy tổng tích lũy của hist, sau đó chia cho tổng số điểm ảnh trong hist.
  • Vẽ histcdf trên các subplot riêng. Phần này đã được chuẩn bị sẵn cho bạn.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Import SciPy's "ndimage" module
import ____ as ____ 

# Create a histogram, binned at each possible value
hist = ____

# Create a cumulative distribution function
cdf = hist.cumsum() / ____

# Plot the histogram and CDF
fig, axes = plt.subplots(2, 1, sharex=True)
axes[0].plot(hist, label='Histogram')
axes[1].plot(cdf, label='CDF')
format_and_render_plot()
Chỉnh sửa và Chạy Mã