国产无码免费,人妻口爆,国产V在线,99中文精品7,国产成人无码AA精品一,制度丝袜诱惑av,久久99免费麻辣视频,蜜臀久久99精品久久久久久酒店
        訂閱
        糾錯
        加入自媒體

        OpenCV指南1:如何在圖像中添加形狀和文字?

        2021-08-02 11:12
        磐創AI
        關注

        4) 如何調整圖像大小?

        4.1. 縮小圖像有時我們會得到高分辨率的圖像,因此對此類圖像執行任何操作都非常困難,因為它會占用更多空間并影響性能。在這種情況下,我們將調整圖像的大小和縮放比例以避免此類問題。cv.resize() 首選的插值方法是 cv.INTER_AREA ,用于縮小原始圖像。下面提到的是我們可以用來調整圖像、視頻和實時視頻大小的功能。def FrameResize(frame,scale):
         Height=int(frame.shape[0]*scale)
         Width=int(frame.shape[1]*scale)
         Dimension=(Height,Width)
         return cv.resize(frame,Dimension,interpolation = cv.INTER_AREA)
        現在,我們將嘗試將圖像大小調整 50%。img=cv.imread("/content/drive/MyDrive/Colab Notebooks/Opencv/fiona-smallwood-iUxjs-F0voI-unsplash-min.jpg")
        print("Shape of the image before resizing :",img.shape,"")
        cv2_imshow(img)
        print(" Image post Resizing  ")
        img_resize=FrameResize(img,0.50)
        cv2_imshow(img_resize)
        上述代碼的輸出是:原圖:

        調整大小后:

        4.2. 放大圖像:上面我們已經看到了圖像的縮小。現在我們將專注于圖像的放大。我們將使用 cv.INTER_CUBIC & cv.INTER_LINEAR 進行放大。cv.INTER_CUBIC 比 cv.INTER_LINEAR 慢,但cv.INTER_CUBIC 的輸出比 cv.INTER_LINEAR 好。默認情況下,插值方法 cv.INTER_LINEAR 用于所有調整大小的目的。Resized=cv.resize(original_img,(700,850),interpolation=cv.INTER_LINEAR)
        cv2_imshow(Resized)
        上述代碼的輸出是:

        4.3. 視頻大小調整現在我們將查看視頻的大小調整。Vid=cv.VideoCapture("/content/drive/MyDrive/Colab Notebooks/Pexels Videos 2716.mp4")
        while True:
         isTrue,Frame= Vid.read()
         New_Frame=FrameResize(Frame,0.50)
         cv2_imshow(New_Frame)
         if cv.waitKey(20) & 0xFF==ord('d'):
           break
        Vid.release()
        cv.destroyAllWindows()
        上述代碼的輸出是:

        下面提到的是另一個功能,在實時視頻的情況下很有幫助。def ChangeRes(Width,Height):
         Vid.set(3,Width)
         Vid.set(4,Height)
         return Vid

        5) 如何在圖片中添加形狀和文字?

        在這里,我們將嘗試添加不同的形狀,如矩形、圓形,并嘗試形狀的厚度。

        5.1. 在圖像中添加矩形下面提到的是這里的代碼,我們將 original_img 作為我們將在其上繪制矩形的輸入圖像。矩形的起始像素點是(200,200),一直到(300,300)。而顏色是 B=200,G=100 和 R=150。查看下面提到的代碼及其輸出original_img=cv.imread("/content/drive/MyDrive/Colab Notebooks/Opencv/19mxv41g9rh61(1).jpg")
        cv.rectangle(original_img,(200,200),(300,300),(200,100,150),thickness=2)
        cv2_imshow(original_img)
        上述代碼的輸出:

        5.2. 添加具有顏色填充的矩形下面提到的是這里的代碼,我們將 original_img 作為我們將在其上繪制矩形的輸入圖像。矩形的起始像素點是(0,0),它一直到圖像的中心。而顏色是 B=200,G=155 和 R=40。這里我們采用了thickness=-1,所以整個矩形都被顏色填充。cv.rectangle(original_img,(0,0),(original_img.shape[1]//2,original_img.shape[0]//2),(200,155,40),thickness=-1)
        cv2_imshow(original_img)
        上述代碼的輸出:

        5.3. 添加具有顏色填充的圓形下面提到的是這里的代碼,我們將 original_img 作為我們將在其上繪制圓圈的輸入圖像。圓的中心像素點為(450,450),圓的半徑為40。而顏色為B=25,G=0,R=100。這里我們采用了thickness=-1,所以整個圓圈都被顏色填充。cv.circle(original_img,(450,450),40,(25,0,100),thickness=-1)
        cv2_imshow(original_img)
        上述代碼的輸出:

        5.4. 在圖像中添加線下面提到的是這里的代碼,我們將 original_img 作為我們將在其上繪制矩形的輸入圖像。線的起始像素點為 (300,300),線的終點像素為 (500,500)。cv.line(original_img,(300,300),(500,500),255,thickness=2)
        cv2_imshow(original_img)
        上述代碼的輸出:

        5.5. 在圖像中添加文本在這里,我們將通過使用cv.putText()方法為空白圖像添加文字,在這里我們輸入文字,像素位置,我們還可以選擇字體類型,如字體FONT_HERSHEY_SIMPLEX,FONT_HERSHEY_PLAIN等等,字體比例、顏色、粗細。我們也可以使用下面的代碼中提到的 numpy 創建空白圖像。blank=np.ones((500,500,3),dtype='uint8')
        cv.putText(blank,'Green light',(blank.shape[0]//2,blank.shape[1]//2),cv.FONT_HERSHEY_COMPLEX,1,(0,255,0),thickness=3)
        cv2_imshow(blank)
        上述代碼的輸出:

        6) 如何裁剪圖像?

        我們可以使用下面提到的代碼輕松裁剪圖像的特定部分。這里你只需要指定你要裁剪的像素。cv2_imshow(original_img)
        Crop_img=original_img[200:350,325:450]
        cv2_imshow(Crop_img)
        上述代碼的輸出:原圖:

        從圖像中裁剪部分:

        7) 如何旋轉或移動圖像?

        如果我們想移動圖像,請查看下面的函數,這對于相同的功能非常有用:def rotate(img,angle,center=None):
         w,h=img.shape[:2]
         if center==None:
           center=(w//2,h//2)
           #center is the center of image from which we have to rotate if it is None then it is cconsider as the center of the original image.
         rotMat=cv.getRotationMatrix2D(center,angle,1.0)
         dim=(w,h)
         return cv.warpAffine(img,rotMat,dim)
        在這里,我們嘗試使用上述函數來旋轉圖像。Rotated_img=rotate(original_img,45,(60,60))
        cv2_imshow(Rotated_img)
        上述代碼的輸出:

        現在,我們將嘗試旋轉上面已經旋轉的圖像。

        從上面的輸出我們知道,如果我們嘗試旋轉已經旋轉的圖像,那么在早期圖像中不可見的圖像部分也會在當前輸出圖像中丟失。此外,我們可以顛倒圖像。查看下面提到的代碼及其輸出。flip_img=cv.flip(original_img,-1)
        cv2_imshow(flip_img)
        上述代碼的輸出:

        總結

        如果你到目前為止已經閱讀了該博客,那么你必須熟悉 OpenCV。OpenCV 的其余主題將在下一篇博客中介紹。查看下一篇博客的鏈接,我們將重點介紹 OpenCV 的一些高級內容。

        image.png

        <上一頁  1  2  
        聲明: 本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權或其他問題,請聯系舉報。

        發表評論

        0條評論,0人參與

        請輸入評論內容...

        請輸入評論/評論長度6~500個字

        您提交的評論過于頻繁,請輸入驗證碼繼續

        暫無評論

        暫無評論

          人工智能 獵頭職位 更多
          掃碼關注公眾號
          OFweek人工智能網
          獲取更多精彩內容
          文章糾錯
          x
          *文字標題:
          *糾錯內容:
          聯系郵箱:
          *驗 證 碼:

          粵公網安備 44030502002758號

          主站蜘蛛池模板: 姜堰市| 亚洲精品一区二区三| 亚洲中文在线观看| 99精品久久久久久无码人妻| 咸丰县| 亚洲日本91| 国产菊爆视频在线观看| 富宁县| 欧美顶级metart祼体全部自慰 | 青阳县| 国产无套内射又大又猛又粗又爽| 忻州市| 白浆网站| 女人的天堂av| 禹城市| 午夜性福利| 亚洲成人综合网站| 一本色道久久综合亚洲精东小说| 亚洲.无码.制服.日韩.中文字幕| 同心县| 亚洲日本三级| 欧美又粗又大又爽| 通州市| 在线免费看av| 男人天堂2025| 龙游县| 久草视频网| 中文字幕有码在线观看| 麻豆熟妇乱妇熟色A片在线看| 狠狠躁夜夜躁人人爽天天高潮| 久久精品亚洲| 婷婷综合久久| 岚皋县| 超碰在线观看91| 国产丝袜极在线| 国产乱人伦无码视频| 国产精品午夜福利视频| 亚洲成人在线黄网| 福利精品| 91在线视频| 凤凰县|