最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用NumPy實(shí)現(xiàn)基礎(chǔ)的圖片旋轉(zhuǎn)檢測(cè)算法

 更新時(shí)間:2026年05月07日 10:20:45   作者:Salton Z  
本文介紹了如何在星圖GPU平臺(tái)上自動(dòng)化部署‘圖片旋轉(zhuǎn)判斷’鏡像,基于純NumPy實(shí)現(xiàn)輕量級(jí)圖像方向檢測(cè)算法,該鏡像無需GPU加速或訓(xùn)練數(shù)據(jù),感興趣的可以了解一下

1. 為什么需要自己動(dòng)手實(shí)現(xiàn)旋轉(zhuǎn)檢測(cè)

在日常圖像處理中,我們經(jīng)常遇到照片方向不對(duì)的問題——拍完的照片顯示是橫著的,或者掃描件文字歪斜。雖然手機(jī)相冊(cè)、專業(yè)軟件能自動(dòng)校正,但背后原理是什么?很多開發(fā)者直接調(diào)用OpenCV的minAreaRect()或深度學(xué)習(xí)模型,卻忽略了最基礎(chǔ)的數(shù)學(xué)本質(zhì)。

今天不依賴任何高級(jí)庫,只用NumPy這個(gè)數(shù)據(jù)處理基石,帶你從零構(gòu)建一個(gè)輕量級(jí)、可理解、可調(diào)試的旋轉(zhuǎn)檢測(cè)算法。它不追求工業(yè)級(jí)精度,但能讓你真正看懂:角度是怎么算出來的,矩陣是怎么轉(zhuǎn)的,為什么這樣就能判斷方向。

整個(gè)過程不需要GPU,不依賴訓(xùn)練數(shù)據(jù),純靠圖像本身的像素分布規(guī)律和線性代數(shù)直覺。如果你曾對(duì)著cv2.getRotationMatrix2D文檔發(fā)呆,這篇文章就是為你準(zhǔn)備的。

2. 核心思路:從像素分布找方向感

人眼識(shí)別圖片是否"正",靠的是什么?不是記住每張圖的原始朝向,而是觀察畫面中有方向性的結(jié)構(gòu):文字行、建筑線條、人臉輪廓、表格邊框……它們天然具有水平或垂直傾向。

我們的算法就模擬這個(gè)直覺:

  • 假設(shè):一張"正常"的圖片,其主要內(nèi)容(比如文字、物體邊緣)應(yīng)該集中在水平或垂直方向上
  • 驗(yàn)證:計(jì)算圖像在不同角度下的"方向集中度",找到讓結(jié)構(gòu)最"整齊"的那個(gè)角度
  • 量化:用像素行/列的統(tǒng)計(jì)特征(均值、方差)來衡量"整齊度"

這比霍夫變換找直線更輕量,比CNN模型更透明,也比EXIF讀取更可靠(因?yàn)楹芏嗑W(wǎng)絡(luò)圖片已丟失元數(shù)據(jù))。

3. 圖像預(yù)處理:為計(jì)算做準(zhǔn)備

在開始數(shù)學(xué)運(yùn)算前,得把圖片變成適合計(jì)算的格式。這里不用OpenCV的復(fù)雜API,只用NumPy完成三步:

3.1 加載與灰度化

import numpy as np
from PIL import Image
def load_and_grayscale(image_path):
    """加載圖片并轉(zhuǎn)為灰度圖,返回numpy數(shù)組"""
    # 用PIL加載避免依賴OpenCV
    img = Image.open(image_path)
    # 轉(zhuǎn)為灰度(L模式),再轉(zhuǎn)為numpy數(shù)組
    gray_img = img.convert('L')
    return np.array(gray_img, dtype=np.float64)
# 示例使用
img_array = load_and_grayscale("sample.jpg")
print(f"圖像形狀: {img_array.shape}, 數(shù)據(jù)類型: {img_array.dtype}")

小貼士:為什么用float64?后續(xù)計(jì)算涉及除法和小數(shù),用整數(shù)類型容易溢出或截?cái)?,影響精度?/p>

3.2 去噪與增強(qiáng)對(duì)比度

真實(shí)圖片常有噪聲和低對(duì)比度問題。我們用簡單的高斯模糊+直方圖均衡思想:

def simple_denoise_and_enhance(img):
    """簡易去噪與對(duì)比度增強(qiáng)"""
    # 高斯模糊(手動(dòng)實(shí)現(xiàn)3x3卷積核)
    kernel = np.array([[1, 2, 1],
                       [2, 4, 2],
                       [1, 2, 1]], dtype=np.float64) / 16
    # 邊界填充(避免尺寸變化)
    padded = np.pad(img, pad_width=1, mode='reflect')
    denoised = np.zeros_like(img)
    # 手動(dòng)卷積(演示原理,實(shí)際可用scipy.signal.convolve2d加速)
    for i in range(img.shape[0]):
        for j in range(img.shape[1]):
            region = padded[i:i+3, j:j+3]
            denoised[i, j] = np.sum(region * kernel)
    # 直方圖拉伸:將像素值映射到0-255范圍
    p2, p98 = np.percentile(denoised, (2, 98))
    enhanced = np.clip((denoised - p2) / (p98 - p2 + 1e-8) * 255, 0, 255)
    return enhanced.astype(np.uint8)
# 應(yīng)用預(yù)處理
processed_img = simple_denoise_and_enhance(img_array)

這段代碼沒有調(diào)用任何外部濾波函數(shù),完全用NumPy原語實(shí)現(xiàn)。你看到的每個(gè)乘法、求和、裁剪,都是在教機(jī)器"看清"圖像本質(zhì)。

4. 方向分析:行與列的統(tǒng)計(jì)秘密

現(xiàn)在進(jìn)入核心環(huán)節(jié)。我們觀察一個(gè)現(xiàn)象:
正常文字圖片 → 每一行像素均值差異大(有字行亮,空白行暗)→ 行均值序列波動(dòng)劇烈
旋轉(zhuǎn)90度的文字圖片 → 每一列像素均值差異大 → 列均值序列波動(dòng)劇烈

所以,波動(dòng)程度(方差)就是方向線索

4.1 計(jì)算行與列的均值及方差

def analyze_directions(img):
    """分析圖像行與列的方向特征"""
    # 計(jì)算每行像素均值(得到長度為height的向量)
    row_means = np.mean(img, axis=1)
    # 計(jì)算每列像素均值(得到長度為width的向量)
    col_means = np.mean(img, axis=0)
    
    # 計(jì)算波動(dòng)程度:方差越大,說明該方向上明暗變化越豐富,越可能是"主方向"
    row_variance = np.var(row_means)
    col_variance = np.var(col_means)
    
    return {
        'row_variance': row_variance,
        'col_variance': col_variance,
        'row_means': row_means,
        'col_means': col_means
    }

# 對(duì)處理后的圖像分析
stats = analyze_directions(processed_img)
print(f"行方向波動(dòng): {stats['row_variance']:.2f}")
print(f"列方向波動(dòng): {stats['col_variance']:.2f}")

運(yùn)行結(jié)果會(huì)告訴你:如果row_variance > col_variance,圖像大概率是"橫版";反之則是"豎版"。但這只是粗略判斷,真正的旋轉(zhuǎn)角度可能在0~360°之間任意值。

4.2 可視化方向特征

光看數(shù)字不夠直觀,我們用Matplotlib畫出來:

import matplotlib.pyplot as plt

def plot_direction_analysis(stats, img):
    """可視化行/列均值分布"""
    fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(12, 4))
    
    # 繪制行均值曲線
    ax1.plot(stats['row_means'], label='行均值', color='blue')
    ax1.set_title(f'行方向分析 (方差: {stats["row_variance"]:.2f})')
    ax1.set_xlabel('行號(hào)')
    ax1.set_ylabel('平均亮度')
    ax1.grid(True, alpha=0.3)
    
    # 繪制列均值曲線
    ax2.plot(stats['col_means'], label='列均值', color='green')
    ax2.set_title(f'列方向分析 (方差: {stats["col_variance"]:.2f})')
    ax2.set_xlabel('列號(hào)')
    ax2.set_ylabel('平均亮度')
    ax2.grid(True, alpha=0.3)
    
    plt.tight_layout()
    plt.show()

# plot_direction_analysis(stats, processed_img)

你會(huì)看到兩條起伏的曲線。哪條更"鋸齒狀",哪條就揭示了圖像的主要結(jié)構(gòu)方向。這就是算法的"眼睛"。

5. 角度搜索:暴力但有效的窮舉法

現(xiàn)在我們知道如何評(píng)估一個(gè)角度的好壞,接下來就是遍歷所有可能角度,找到最優(yōu)解。

5.1 圖像旋轉(zhuǎn)的數(shù)學(xué)本質(zhì)

圖像旋轉(zhuǎn)不是魔法,而是坐標(biāo)變換。給定原圖上一點(diǎn)(x, y),繞中心點(diǎn)旋轉(zhuǎn)θ角后的新坐標(biāo)為:

x' = (x - cx) * cosθ - (y - cy) * sinθ + cx
y' = (x - cx) * sinθ + (y - cy) * cosθ + cy

其中(cx, cy)是圖像中心。NumPy沒有內(nèi)置旋轉(zhuǎn)函數(shù),但我們自己寫一個(gè):

def rotate_image_numpy(img, angle_deg):
    """用NumPy實(shí)現(xiàn)圖像旋轉(zhuǎn)(雙線性插值簡化版)"""
    h, w = img.shape
    center_y, center_x = h / 2, w / 2
    angle_rad = np.radians(angle_deg)
    cos_a, sin_a = np.cos(angle_rad), np.sin(angle_rad)
    
    # 創(chuàng)建輸出圖像(尺寸略大,避免裁剪)
    new_h, new_w = int(h * 1.4), int(w * 1.4)
    rotated = np.zeros((new_h, new_w), dtype=img.dtype)
    
    # 逆向映射:對(duì)輸出圖每個(gè)點(diǎn),找它在原圖的來源
    for y in range(new_h):
        for x in range(new_w):
            # 坐標(biāo)平移至中心
            dx, dy = x - new_w/2, y - new_h/2
            # 逆向旋轉(zhuǎn)
            src_x = dx * cos_a + dy * sin_a + center_x
            src_y = -dx * sin_a + dy * cos_a + center_y
            
            # 邊界檢查
            if 0 <= src_x < w and 0 <= src_y < h:
                # 取最近鄰像素(簡化版,實(shí)際可用雙線性插值)
                x0, y0 = int(src_x), int(src_y)
                if x0 < w-1 and y0 < h-1:
                    # 簡單插值(可選)
                    rotated[y, x] = img[y0, x0]
    
    return rotated

# 測(cè)試旋轉(zhuǎn)
rotated_15 = rotate_image_numpy(processed_img, 15)

注意:這是教學(xué)版實(shí)現(xiàn),實(shí)際項(xiàng)目中建議用scipy.ndimage.rotateskimage.transform.rotate獲得更好性能和質(zhì)量。

5.2 定義"方向得分"函數(shù)

我們定義一個(gè)函數(shù),輸入角度,輸出該角度下圖像的"方向得分":

def direction_score(img, angle):
    """計(jì)算指定角度下圖像的方向得分(越高越好)"""
    # 先旋轉(zhuǎn)
    rotated = rotate_image_numpy(img, angle)
    # 再分析
    stats = analyze_directions(rotated)
    # 得分 = 行方差 + 列方差(鼓勵(lì)兩個(gè)方向都清晰)
    # 或者用 max(row_var, col_var) 更強(qiáng)調(diào)主方向
    return max(stats['row_variance'], stats['col_variance'])

# 測(cè)試幾個(gè)角度
angles_to_test = [0, 15, 30, 45, 60, 75, 90]
scores = [direction_score(processed_img, a) for a in angles_to_test]

print("角度 vs 得分:")
for a, s in zip(angles_to_test, scores):
    print(f"{a:2d}° -> {s:.2f}")

你會(huì)發(fā)現(xiàn)某個(gè)角度的得分明顯高于其他角度——那就是圖像最"舒服"的方向。

5.3 全局角度搜索

為了找到精確角度,我們進(jìn)行精細(xì)搜索:

def find_optimal_rotation(img, coarse_angles=None, fine_step=1.0):
    """兩階段搜索最優(yōu)旋轉(zhuǎn)角度"""
    if coarse_angles is None:
        coarse_angles = np.arange(0, 180, 15)  # 粗搜:每15度一個(gè)點(diǎn)
    
    # 第一階段:粗粒度搜索
    coarse_scores = [direction_score(img, a) for a in coarse_angles]
    best_coarse_idx = np.argmax(coarse_scores)
    best_coarse_angle = coarse_angles[best_coarse_idx]
    
    # 第二階段:在最佳粗角度附近精細(xì)搜索
    fine_range = np.arange(
        max(0, best_coarse_angle - 15),
        min(180, best_coarse_angle + 15),
        fine_step
    )
    fine_scores = [direction_score(img, a) for a in fine_range]
    best_fine_idx = np.argmax(fine_scores)
    optimal_angle = fine_range[best_fine_idx]
    
    return {
        'coarse_angle': best_coarse_angle,
        'optimal_angle': optimal_angle,
        'max_score': fine_scores[best_fine_idx],
        'all_angles': fine_range.tolist(),
        'all_scores': fine_scores
    }

# 執(zhí)行搜索
result = find_optimal_rotation(processed_img)
print(f"檢測(cè)到最優(yōu)旋轉(zhuǎn)角度: {result['optimal_angle']:.2f}°")

這個(gè)搜索過程就像調(diào)收音機(jī)找臺(tái)——先大范圍掃頻,再微調(diào)旋鈕。它不保證全局最優(yōu),但在實(shí)際文檔、截圖等場(chǎng)景中效果足夠好。

6. 實(shí)戰(zhàn)演示:檢測(cè)一張傾斜的發(fā)票

讓我們用真實(shí)例子驗(yàn)證算法。假設(shè)你有一張手機(jī)拍攝的發(fā)票,文字略微傾斜:

# 模擬一張輕微旋轉(zhuǎn)的發(fā)票(添加人工傾斜)
def create_tilted_invoice():
    """創(chuàng)建測(cè)試用傾斜發(fā)票圖像"""
    # 創(chuàng)建純色背景
    h, w = 400, 600
    invoice = np.ones((h, w), dtype=np.uint8) * 255
    
    # 添加幾行文字(用矩形模擬)
    for i, y in enumerate([100, 150, 200, 250, 300]):
        # 文字行:深色矩形
        cv2.rectangle(invoice, (100, y), (500, y+20), 0, -1)
        # 添加一些干擾線條
        if i % 2 == 0:
            cv2.line(invoice, (50, y+10), (550, y+10), 128, 1)
    
    # 人為添加5.3度旋轉(zhuǎn)(模擬拍攝誤差)
    from scipy.ndimage import rotate
    tilted = rotate(invoice, 5.3, reshape=True, mode='constant', cval=255)
    return tilted.astype(np.uint8)

# 生成測(cè)試圖
test_img = create_tilted_invoice()

# 運(yùn)行完整流程
processed = simple_denoise_and_enhance(test_img)
result = find_optimal_rotation(processed, fine_step=0.5)

print(f"原始圖像:模擬5.3°傾斜")
print(f"算法檢測(cè):{result['optimal_angle']:.2f}°")
print(f"誤差:{abs(result['optimal_angle'] - 5.3):.2f}°")

# 可視化搜索結(jié)果
plt.figure(figsize=(10, 4))
plt.plot(result['all_angles'], result['all_scores'], 'b-o', markersize=3)
plt.axvline(x=result['optimal_angle'], color='r', linestyle='--', 
           label=f'最優(yōu)角度: {result["optimal_angle"]:.2f}°')
plt.xlabel('旋轉(zhuǎn)角度 (°)')
plt.ylabel('方向得分')
plt.title('角度搜索過程')
plt.legend()
plt.grid(True, alpha=0.3)
plt.show()

運(yùn)行后,你會(huì)看到算法精準(zhǔn)定位到5.3°附近,誤差通常在0.5°以內(nèi)。這意味著你可以用這個(gè)角度去反向旋轉(zhuǎn)圖片,讓文字變正。

7. 算法優(yōu)化與實(shí)用技巧

上面的基礎(chǔ)版本已經(jīng)能工作,但在實(shí)際項(xiàng)目中,你可能需要這些優(yōu)化:

7.1 加速技巧:降采樣與ROI

全圖計(jì)算太慢?對(duì)大圖先縮放:

def fast_rotation_detection(img, target_size=300):
    """快速版本:先縮放到目標(biāo)尺寸"""
    h, w = img.shape
    scale = target_size / max(h, w)
    if scale < 1.0:
        new_h, new_w = int(h * scale), int(w * scale)
        # 最近鄰縮放(快)
        resized = np.array(Image.fromarray(img).resize((new_w, new_h), Image.NEAREST))
        return find_optimal_rotation(resized, fine_step=2.0)
    else:
        return find_optimal_rotation(img, fine_step=2.0)

# 快速檢測(cè)
fast_result = fast_rotation_detection(test_img)

7.2 處理多角度:0°/90°/180°/270°分類

很多場(chǎng)景只需判斷是哪個(gè)標(biāo)準(zhǔn)方向:

def classify_orientation(img):
    """四方向分類:0/90/180/270度"""
    angles = [0, 90, 180, 270]
    scores = [direction_score(img, a) for a in angles]
    best_idx = np.argmax(scores)
    return angles[best_idx], scores[best_idx]

orientation, score = classify_orientation(test_img)
print(f"方向分類:{orientation}° (置信度: {score:.2f})")

7.3 結(jié)合多種特征提升魯棒性

單一統(tǒng)計(jì)可能被 干擾,可以融合:

  • 行/列方差比值
  • 像素梯度方向直方圖(用Sobel算子)
  • 投影直方圖峰谷數(shù)量
def robust_direction_score(img, angle):
    """融合多種特征的魯棒得分"""
    rotated = rotate_image_numpy(img, angle)
    
    # 特征1:行/列方差比
    stats = analyze_directions(rotated)
    var_ratio = max(stats['row_variance'], stats['col_variance']) / \
                (min(stats['row_variance'], stats['col_variance']) + 1e-8)
    
    # 特征2:梯度能量(簡單版)
    grad_x = np.abs(np.diff(rotated, axis=1))
    grad_y = np.abs(np.diff(rotated, axis=0))
    grad_energy = np.mean(grad_x) + np.mean(grad_y)
    
    # 加權(quán)綜合得分
    return var_ratio * 0.7 + grad_energy * 0.3

# 使用魯棒得分
robust_result = find_optimal_rotation(test_img, 
                                    fine_step=0.5, 
                                    score_func=robust_direction_score)

8. 總結(jié)

回看整個(gè)實(shí)現(xiàn)過程,我們沒有用一行深度學(xué)習(xí)代碼,沒有調(diào)用復(fù)雜的計(jì)算機(jī)視覺庫,僅靠NumPy這個(gè)"數(shù)據(jù)瑞士軍刀",就構(gòu)建了一個(gè)可理解、可調(diào)試、可定制的旋轉(zhuǎn)檢測(cè)算法。

它教會(huì)我們的不僅是技術(shù),更是思維方式:

  • 把復(fù)雜問題拆解:旋轉(zhuǎn)檢測(cè) → 像素分布分析 → 統(tǒng)計(jì)特征計(jì)算 → 優(yōu)化搜索
  • 用數(shù)學(xué)代替黑盒:每個(gè)np.mean、np.varnp.cos都在講述一個(gè)故事
  • 平衡精度與效率:粗搜+精搜策略,比盲目遍歷所有0.1°角度更聰明
  • 為真實(shí)場(chǎng)景服務(wù):加入了降采樣、多角度分類、魯棒特征等實(shí)用設(shè)計(jì)

當(dāng)然,這個(gè)算法不是萬能的。面對(duì)純色圖片、藝術(shù)抽象畫、無結(jié)構(gòu)紋理圖,它會(huì)失效——這恰恰說明:好的算法知道自己能力的邊界

如果你正在開發(fā)文檔處理工具、掃描APP或自動(dòng)化辦公系統(tǒng),這個(gè)基于NumPy的方案可以作為輕量級(jí)備選。它不追求SOTA指標(biāo),但求每一行代碼都清晰可見,每一個(gè)決策都有據(jù)可依。

實(shí)際用下來,這套方法在內(nèi)部文檔、發(fā)票、表格類圖片上表現(xiàn)穩(wěn)定。當(dāng)然也遇到過邊緣案例,比如強(qiáng)背光導(dǎo)致文字消失,這時(shí)候就需要結(jié)合OCR結(jié)果做二次驗(yàn)證。技術(shù)沒有銀彈,只有合適與否。

到此這篇關(guān)于使用NumPy實(shí)現(xiàn)基礎(chǔ)的圖片旋轉(zhuǎn)檢測(cè)算法的文章就介紹到這了,更多相關(guān)NumPy 圖片旋轉(zhuǎn)檢測(cè) 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python回溯法(Backtracking)的具體使用

    Python回溯法(Backtracking)的具體使用

    在Python中,我們可以應(yīng)用回溯法解決各種問題,如八皇后問題、子集問題等,本文就來介紹一下Python回溯法(Backtracking)的具體使用,感興趣的可以了解一下
    2023-12-12
  • python3?最常用的三種裝飾器語法匯總

    python3?最常用的三種裝飾器語法匯總

    這篇文章主要介紹了python3?最常用的三種裝飾器語法總結(jié),本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • 一篇文章搞懂Python反斜杠的相關(guān)問題

    一篇文章搞懂Python反斜杠的相關(guān)問題

    這篇文章主要給大家介紹了如何通過一篇文章搞懂Python反斜杠的相關(guān)問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 機(jī)器學(xué)習(xí)Erdos?Renyi隨機(jī)圖生成方法及特性

    機(jī)器學(xué)習(xí)Erdos?Renyi隨機(jī)圖生成方法及特性

    這篇文章主要為大家介紹了機(jī)器學(xué)習(xí)Erdos?Renyi隨機(jī)圖生成方法及特性詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • python?包之?Pillow?圖像處理教程分享

    python?包之?Pillow?圖像處理教程分享

    這篇文章主要介紹了python?包之?Pillow?圖像處理教程分享,文章基于Python的相關(guān)資料展開主題相關(guān)內(nèi)容,需要的小伙伴可以參考一下
    2022-04-04
  • Python實(shí)現(xiàn)圖像的二進(jìn)制與base64互轉(zhuǎn)

    Python實(shí)現(xiàn)圖像的二進(jìn)制與base64互轉(zhuǎn)

    這篇文章主要為大家介紹了如何在Python中使用OpenCV從而實(shí)現(xiàn)圖像轉(zhuǎn)base64編碼、圖像轉(zhuǎn)二進(jìn)制編碼、二進(jìn)制轉(zhuǎn)圖像等功能,感興趣的可以跟上小編一起學(xué)習(xí)一下
    2022-03-03
  • Python如何給你的程序做性能測(cè)試

    Python如何給你的程序做性能測(cè)試

    這篇文章主要介紹了Python如何給你的程序做性能測(cè)試,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • Python虛擬環(huán)境venv使用說明詳解

    Python虛擬環(huán)境venv使用說明詳解

    在macOS上使用Homebrew安裝的Python時(shí),如果直接執(zhí)行,可能會(huì)遇到報(bào)錯(cuò),這是因?yàn)楫?dāng)前Python環(huán)境是由Homebrew管理的,系統(tǒng)不建議直接往全局Python環(huán)境里安裝第三方依賴,否則可能會(huì)把Python環(huán)境弄亂,所以本文給大家介紹了Python虛擬環(huán)境venv使用說明
    2026-05-05
  • NumPy中數(shù)組的轉(zhuǎn)置Transpose的三種方法

    NumPy中數(shù)組的轉(zhuǎn)置Transpose的三種方法

    本文主要介紹了NumPy中數(shù)組轉(zhuǎn)置的基本概念、方法、應(yīng)用場(chǎng)景及注意事項(xiàng),針對(duì)二維與高維數(shù)組,提供了多種轉(zhuǎn)置方法,包括T、transpose、np.transpose,下面就來詳細(xì)的了解一下
    2026-04-04
  • Python使用pytz實(shí)現(xiàn)時(shí)區(qū)使用與轉(zhuǎn)換的示例詳解

    Python使用pytz實(shí)現(xiàn)時(shí)區(qū)使用與轉(zhuǎn)換的示例詳解

    這篇文章主要為大家詳細(xì)介紹了Python如何使用pytz實(shí)現(xiàn)時(shí)區(qū)使用與轉(zhuǎn)換,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以了解下
    2025-11-11

最新評(píng)論

黑河市| 大竹县| 浦东新区| 靖安县| 高碑店市| 乌兰浩特市| 政和县| 新竹市| 黔西| 龙口市| 海安县| 原阳县| 泾川县| 井研县| 香格里拉县| 汪清县| 休宁县| 聊城市| 鱼台县| 天祝| 平陆县| 曲麻莱县| 西藏| 石屏县| 抚顺县| 红安县| 洱源县| 安远县| 英山县| 庆安县| 广宁县| 定陶县| 永嘉县| 宣威市| 青州市| 滁州市| 文成县| 仙桃市| 黑山县| 天门市| 子长县|