MicroPython 函数库¶
本文档全部内容由 星瞳科技 翻译并发布。
警告
此部分的重要总结:
MicroPython在每个模块中实现Python功能的一个子集。
为简化可扩展性,标准Python模块的MicroPython版本通常有
u
(micro)前缀。由于资源的限制,任何特定MicroPython变量或端口可能略去在此文档中描述的任何特性/功能。
此章节描述内置于MicroPython的模块。有如下几种类型的模块:
实现标准Python功能的子集且并不由用户进行扩展的模块。
实现标准Python功能的子集且包括用户扩展的条款(通过Python编码)。
对Python标准库实现MicroPython拓展的模块。
特定于某一端口而不可移植的模块。
注意模块及其内容的可用性:总体而言,该文件目的为描述在MicroPython中实现的所有模块和函数/类。 但是,MicroPython为高度可配置的,且每个端口到一个特定的板/嵌入式系统仅提供MicroPython库的一个子集。 对于官方支持的端口而言,目前正尽力实现过滤不适用项目或使用可用性来标记个别描述:描述提供给定特性的端口的子句。 考虑到这一点,请注意在该文档中描述的模块中的函数/类可能在特定的板上特定的MicroPython的构建中不可用。 寻找某个特定功能的可用性/不可用性的一般信息的最佳位置是“一般信息(General Information)”部分,其中包含与特定端口相关的信息。
在某些端口上,您可以通过在REPL中import以下内容来发现可用的内置库:
help('modules')
除了在此文件中描述的内置库外,Python标准库中的许多其他模块,以及对此其的MicroPython扩展,都可在 micropython-lib
中找到。
Python标准库和micro-libraries¶
下面的标准Python库已被微型化,以适应MicroPython的原理。这些库执行该模块的核心功能,并被设计作为标准Python库的替代选择。
以下的某些模块使用标准的Python名,但带有“u”前缀,例如,其名称为 ujson
而不是 json
。
这表示这样的一个模块是micro-library,即仅实现CPython模块功能的一个子集。通过以不同方式命名它们,
用户可以选择编写Python级别的模块来扩展功能,从而更好地与CPython实现兼容(实际上,这正是由上述的 micropython-lib
实现的)。
在一些嵌入式平台上,添加Python级别的包装器模块以实现与CPython的命名兼容非常麻烦,
而微模块可通过其u命名和非u命名来使用。该非u命名可被您的包路径中的同名文件覆盖。
例如, import json
将首先搜索一个文件 json.py
或目录 json
,若搜寻到相关内容,则加载该数据包。
若未搜寻到目标信息,则后退以加载内置 ujson
模块。
- 内置函数
array
– 数组cmath
– 复数的数学函数gc
– 控制垃圾回收器math
– 数学函数sys
– 系统相关函数ubinascii
– 二进制/ASCII转换ucollections
– 容器uerrno
– 系统错误代码uhashlib
– 散列算法uheapq
– 堆队列算法uio
– 输入/输出流ujson
– JSON编码与解码uos
– 基本“操作系统”服务ure
– 正则表达式uselect
– 在一组流中等待事件usocket
– socket模块ussl
– SSL/TLS moduleustruct
– 打包和解压缩原始数据类型utime
– 时间相关的函数uzlib
– zlib解压缩_thread
– 多线程支持
MicroPython特定的库¶
MicroPython实现的特定功能可在以下库中找到。
framebuf
— 帧缓冲区操作machine
— 硬件相关的函数micropython
– 访问和控制MicroPython内部构件network
— 网络配置- 常见的网络适配器接口
- 特定network网络类实现
- class WINC – wifi shield driver
WINC
winc.connect()
winc.start_ap()
winc.disconnect()
winc.isconnected()
winc.connected_sta()
winc.wait_for_sta()
winc.ifconfig()
winc.scan()
winc.rssi()
winc.fw_version()
winc.fw_dump()
winc.fw_update()
winc.OPEN
winc.WEP
winc.WPA_PSK
winc.MODE_STA
winc.MODE_AP
winc.MODE_FIRMWARE
aes
uctypes
– 以结构化的方式访问二进制数据
特定于OpenMV Cam的库¶
以下库是特定于OpenMV Cam的。
pyb
— 板级功能time
— 跟踪运行时间sensor
— 感光元件- 函数
sensor.reset()
sensor_sleep()
sensor.shutdown()
sensor.flush()
sensor.snapshot()
sensor.skip_frames()
sensor.width()
sensor.height()
sensor.get_fb()
sensor.get_id()
sensor.alloc_extra_fb()
sensor.dealloc_extra_fb()
sensor.set_pixformat()
sensor.get_pixformat()
sensor.set_framesize()
sensor.get_framesize()
sensor.set_framerate()
sensor.get_framerate()
sensor.set_windowing()
sensor.get_windowing()
sensor.set_gainceiling()
sensor.set_contrast()
sensor.set_brightness()
sensor.set_saturation()
sensor.set_quality()
sensor.set_colorbar()
sensor.set_auto_gain()
sensor.get_gain_db()
sensor.set_auto_exposure()
sensor.get_exposure_us()
sensor.set_auto_whitebal()
sensor.get_rgb_gain_db()
sensor.set_hmirror()
sensor.get_hmirror()
sensor.set_vflip()
sensor.get_vflip()
sensor.set_transpose()
sensor.get_transpose()
sensor.set_auto_rotation()
sensor.get_auto_rotation()
sensor.set_framebuffers()
sensor.get_framebuffers()
sensor.set_lens_correction()
sensor.set_vsync_callback()
sensor.set_frame_callback()
sensor.get_frame_available()
sensor.ioctl()
sensor.set_color_palette()
sensor.get_color_palette()
sensor.__write_reg()
sensor.__read_reg()
- 常量
sensor.BINARY
sensor.GRAYSCALE
sensor.RGB565
sensor.BAYER
sensor.JPEG
sensor.OV2640
sensor.OV5640
sensor.OV7690
sensor.OV7725
sensor.OV9650
sensor.MT9M114
sensor.MT9V034
sensor.LEPTON
sensor.HM01B0
sensor.GC2145
sensor.QQCIF
sensor.QCIF
sensor.CIF
sensor.QQSIF
sensor.QSIF
sensor.SIF
sensor.QQQQVGA
sensor.QQQVGA
sensor.QQVGA
sensor.QVGA
sensor.VGA
sensor.HQQQVGA
sensor.HQQVGA
sensor.HQVGA
sensor.B64x32
sensor.B64x64
sensor.B128x64
sensor.B128x128
sensor.B320X320
sensor.LCD
sensor.QQVGA2
sensor.WVGA
sensor.WVGA2
sensor.SVGA
sensor.SXGA
sensor.UXGA
sensor.HD
sensor.FHD
sensor.QHD
sensor.QXGA
sensor.WQXGA
sensor.WQXGA2
sensor.PALETTE_IRONBOW
sensor.IOCTL_SET_READOUT_WINDOW
sensor.IOCTL_GET_READOUT_WINDOW
sensor.IOCTL_SET_TRIGGERED_MODE
sensor.IOCTL_GET_TRIGGERED_MODE
sensor.IOCTL_TRIGGER_AUTO_FOCUS
sensor.IOCTL_PAUSE_AUTO_FOCUS
sensor.IOCTL_RESET_AUTO_FOCUS
sensor.IOCTL_WAIT_ON_AUTO_FOCUS
sensor.IOCTL_LEPTON_GET_WIDTH
sensor.IOCTL_LEPTON_GET_HEIGHT
sensor.IOCTL_LEPTON_GET_RADIOMETRY
sensor.IOCTL_LEPTON_GET_REFRESH
sensor.IOCTL_LEPTON_GET_RESOLUTION
sensor.IOCTL_LEPTON_RUN_COMMAND
sensor.IOCTL_LEPTON_SET_ATTRIBUTE
sensor.IOCTL_LEPTON_GET_ATTRIBUTE
sensor.IOCTL_LEPTON_GET_FPA_TEMPERATURE
sensor.IOCTL_LEPTON_GET_AUX_TEMPERATURE
sensor.IOCTL_LEPTON_SET_MEASUREMENT_MODE
sensor.IOCTL_LEPTON_GET_MEASUREMENT_MODE
sensor.IOCTL_LEPTON_SET_MEASUREMENT_RANGE
sensor.IOCTL_LEPTON_GET_MEASUREMENT_RANGE
sensor.IOCTL_HIMAX_MD_ENABLE
sensor.IOCTL_HIMAX_MD_CLEAR
sensor.IOCTL_HIMAX_MD_WINDOW
sensor.IOCTL_HIMAX_MD_THRESHOLD
sensor.IOCTL_HIMAX_OSC_ENABLE
sensor.SINGLE_BUFFER
sensor.DOUBLE_BUFFER
sensor.TRIPLE_BUFFER
sensor.VIDEO_FIFO
- 函数
image
— 机器视觉- 函数
image.binary_to_grayscale()
image.binary_to_rgb()
image.binary_to_lab()
image.binary_to_yuv()
image.grayscale_to_binary()
image.grayscale_to_rgb()
image.grayscale_to_lab()
image.grayscale_to_yuv()
image.rgb_to_binary()
image.rgb_to_grayscale()
image.rgb_to_lab()
image.rgb_to_yuv()
image.lab_to_binary()
image.lab_to_grayscale()
image.lab_to_rgb()
image.lab_to_yuv()
image.yuv_to_binary()
image.yuv_to_grayscale()
image.yuv_to_rgb()
image.yuv_to_lab()
image.load_descriptor()
image.save_descriptor()
image.match_descriptor()
- 函数
- HaarCascade 类 – 特征描述符
- Histogram 类 – 直方图对象
- Percentile 类 – 百分比值对象
- Threhsold 类 – 阈值对象
- class Statistics – 统计数据对象
image.statistics
image.statistics.statistics.mean()
image.statistics.statistics.median()
image.statistics.statistics.mode()
image.statistics.statistics.stdev()
image.statistics.statistics.min()
image.statistics.statistics.max()
image.statistics.statistics.lq()
image.statistics.statistics.uq()
image.statistics.statistics.l_mean()
image.statistics.statistics.l_median()
image.statistics.statistics.l_mode()
image.statistics.statistics.l_stdev()
image.statistics.statistics.l_min()
image.statistics.statistics.l_max()
image.statistics.statistics.l_lq()
image.statistics.statistics.l_uq()
image.statistics.statistics.a_mean()
image.statistics.statistics.a_median()
image.statistics.statistics.a_mode()
image.statistics.statistics.a_stdev()
image.statistics.statistics.a_min()
image.statistics.statistics.a_max()
image.statistics.statistics.a_lq()
image.statistics.statistics.a_uq()
image.statistics.statistics.b_mean()
image.statistics.statistics.b_median()
image.statistics.statistics.b_mode()
image.statistics.statistics.b_stdev()
image.statistics.statistics.b_min()
image.statistics.statistics.b_max()
image.statistics.statistics.b_lq()
image.statistics.statistics.b_uq()
- Blob 类 – 色块对象
image.blob
blob.corners()
blob.min_corners()
blob.rect()
blob.x()
blob.y()
blob.w()
blob.h()
blob.pixels()
blob.cx()
blob.cxf()
blob.cy()
blob.cyf()
blob.rotation()
blob.rotation_deg()
blob.rotation_rad()
blob.code()
blob.count()
blob.perimeter()
blob.roundness()
blob.elongation()
blob.area()
blob.density()
blob.extent()
blob.compactness()
blob.solidity()
blob.convexity()
blob.x_hist_bins()
blob.y_hist_bins()
blob.major_axis_line()
blob.minor_axis_line()
blob.enclosing_circle()
blob.enclosed_ellipse()
- Line类 – 直线对象
- Circle类 –圆形对象
- Rect类 – 矩形对象
- QRCode类 – 二维码对象
image.qrcode
image.qrcode.qrcode.corners()
image.qrcode.qrcode.rect()
image.qrcode.qrcode.x()
image.qrcode.qrcode.y()
image.qrcode.qrcode.w()
image.qrcode.qrcode.h()
image.qrcode.qrcode.payload()
image.qrcode.qrcode.version()
image.qrcode.qrcode.ecc_level()
image.qrcode.qrcode.mask()
image.qrcode.qrcode.data_type()
image.qrcode.qrcode.eci()
image.qrcode.qrcode.is_numeric()
image.qrcode.qrcode.is_alphanumeric()
image.qrcode.qrcode.is_binary()
image.qrcode.qrcode.is_kanji()
- AprilTag类 – AprilTag对象
image.apriltag
image.apriltag.apriltag.corners()
image.apriltag.apriltag.rect()
image.apriltag.apriltag.x()
image.apriltag.apriltag.y()
image.apriltag.apriltag.w()
image.apriltag.apriltag.h()
image.apriltag.apriltag.id()
image.apriltag.apriltag.family()
image.apriltag.apriltag.cx()
image.apriltag.apriltag.cy()
image.apriltag.apriltag.rotation()
image.apriltag.apriltag.decision_margin()
image.apriltag.apriltag.hamming()
image.apriltag.apriltag.goodness()
image.apriltag.apriltag.x_translation()
image.apriltag.apriltag.y_translation()
image.apriltag.apriltag.z_translation()
image.apriltag.apriltag.x_rotation()
image.apriltag.apriltag.y_rotation()
image.apriltag.apriltag.z_rotation()
- DataMatrix类 – 数据矩阵对象
image.datamatrix
image.datamatrix.datamatrix.corners()
image.datamatrix.datamatrix.rect()
image.datamatrix.datamatrix.x()
image.datamatrix.datamatrix.y()
image.datamatrix.datamatrix.w()
image.datamatrix.datamatrix.h()
image.datamatrix.datamatrix.payload()
image.datamatrix.datamatrix.rotation()
image.datamatrix.datamatrix.rows()
image.datamatrix.datamatrix.columns()
image.datamatrix.datamatrix.capacity()
image.datamatrix.datamatrix.padding()
- BarCode类 – 条形码对象
image.barcode
image.barcode.barcode.corners()
image.barcode.barcode.rect()
image.barcode.barcode.x()
image.barcode.barcode.y()
image.barcode.barcode.w()
image.barcode.barcode.h()
image.barcode.barcode.payload()
image.barcode.barcode.type()
image.barcode.barcode.rotation()
image.barcode.barcode.quality()
- Displacement类 – 位移对象
- Kptmatch类 – 特征点对象
- Image类 – 图像对象
image.Image
image.Image.image.width()
image.Image.image.height()
image.Image.image.format()
image.Image.image.size()
image.Image.image.bytearray()
image.Image.image.get_pixel()
image.Image.image.set_pixel()
image.Image.image.mean_pool()
image.Image.image.mean_pooled()
image.Image.image.midpoint_pool()
image.Image.image.midpoint_pooled()
image.Image.image.to_bitmap()
image.Image.image.to_grayscale()
image.Image.image.to_rgb565()
image.Image.image.to_rgb565()
image.Image.image.to_rainbow()
image.Image.image.compress()
image.Image.image.compress_for_ide()
image.Image.image.compressed()
image.Image.image.compressed_for_ide()
image.Image.image.jpeg_encode_for_ide()
image.Image.image.copy()
image.Image.image.crop()
image.Image.image.scale()
image.Image.image.save()
image.Image.image.flush()
image.Image.image.clear()
image.Image.image.draw_line()
image.Image.image.draw_rectangle()
image.Image.image.draw_circle()
image.Image.image.draw_ellipse()
image.Image.image.draw_string()
image.Image.image.draw_cross()
image.Image.image.draw_arrow()
image.Image.image.draw_edges()
image.Image.image.draw_image()
image.Image.image.draw_keypoints()
image.Image.image.flood_fill()
image.Image.image.mask_rectange()
image.Image.image.mask_circle()
image.Image.image.mask_ellipse()
image.Image.image.binary()
image.Image.image.invert()
image.Image.image.b_and()
image.Image.image.b_nand()
image.Image.image.b_or()
image.Image.image.b_nor()
image.Image.image.b_xor()
image.Image.image.b_xnor()
image.Image.image.erode()
image.Image.image.dilate()
image.Image.image.open()
image.Image.image.close()
image.Image.image.top_hat()
image.Image.image.black_hat()
image.Image.image.gamma_corr()
image.Image.image.negate()
image.Image.image.replace()
image.Image.image.assign()
image.Image.image.set()
image.Image.image.add()
image.Image.image.sub()
image.Image.image.mul()
image.Image.image.div()
image.Image.image.min()
image.Image.image.max()
image.Image.image.difference()
image.Image.image.blend()
image.Image.image.histeq()
image.Image.image.mean()
image.Image.image.mode()
image.Image.image.midpoint()
image.Image.image.morph()
image.Image.image.gaussian()
image.Image.image.laplacian()
image.Image.image.bilateral()
image.linpolar()
image.Image.image.logpolar()
image.Image.image.lens_corr()
image.Image.img.rotation_corr()
image.Image.image.get_histogram()
image.Image.image.get_statistics()
image.Image.image.get_regression()
image.Image.image.find_blobs()
image.Image.image.find_lines()
image.Image.image.find_line_segments()
image.Image.image.find_circles()
image.Image.image.find_rects()
image.Image.image.find_qrcodes()
image.Image.image.find_apriltags()
image.Image.image.find_datamatrices()
image.Image.image.find_barcodes()
image.Image.image.find_displacement()
image.Image.image.find_template()
image.Image.image.find_features()
image.Image.image.find_eye()
image.Image.image.find_lbp()
image.Image.image.find_keypoints()
image.Image.image.find_edges()
- 常量
image.BINARY
image.GRAYSCALE
image.RGB565
image.BAYER
image.JPEG
image.AREA
image.BILINEAR
image.BICUBIC
image.CENTER
image.EXTRACT_RGB_CHANNEL_FIRST
image.APPLY_COLOR_PALETTE_FIRST
image.BLACK_BACKGROUND
image.SEARCH_EX
image.SEARCH_DS
image.EDGE_CANNY
image.EDGE_SIMPLE
image.CORNER_FAST
image.CORNER_AGAST
image.TAG16H5
image.TAG25H7
image.TAG25H9
image.TAG36H10
image.TAG36H11
image.ARTOOLKIT
image.EAN2
image.EAN5
image.EAN8
image.UPCE
image.ISBN10
image.UPCA
image.EAN13
image.ISBN13
image.I25
image.DATABAR
image.DATABAR_EXP
image.CODABAR
image.CODE39
image.PDF417
image.CODE93
image.CODE128
nn
— 神经网络- nn_class 类 – 神经网络检测结果
- Net 类 – 神经网络
tf
— Tensor Flow- class tf_classification – tf 分类 检测结果
- class tf_model – TensorFlow 模型
gif
— 录制gif动图- Gif类 – Gif录制器
mjpeg
— mjpeg录制- Mjpeg类 – Mjpeg录制
lcd
— lcd扩展板驱动- 函数
lcd.init()
lcd.deinit()
lcd.width()
lcd.height()
lcd.type()
lcd.triple_buffer()
lcd.bgr()
lcd.framesize()
lcd.refresh()
lcd.set_backlight()
lcd.get_backlight()
lcd.get_display_connected()
lcd.register_hotplug_cb()
lcd.get_display_id_data()
lcd.send_frame()
lcd.receive_frame()
lcd.register_receive_cb()
lcd.received_frame_src_addr()
lcd.received_frame_bytes()
lcd.update_touch_points()
lcd.register_touch_cb()
lcd.get_gesture()
lcd.get_points()
lcd.get_point_flag()
lcd.get_point_id()
lcd.get_point_x_position()
lcd.get_point_y_position()
lcd.display()
lcd.clear()
- 常数
lcd.LCD_NONE
lcd.LCD_SHIELD
lcd.LCD_DISPLAY
lcd.LCD_DISPLAY_WITH_HDMI
lcd.LCD_DISPLAY_ONLY_HDMI
lcd.QVGA
lcd.TQVGA
lcd.FHVGA
lcd.FHVGA2
lcd.VGA
lcd.THVGA
lcd.FWVGA
lcd.FWVGA2
lcd.TFWVGA
lcd.TFWVGA2
lcd.SVGA
lcd.WSVGA
lcd.XGA
lcd.SXGA
lcd.SXGA2
lcd.UXGA
lcd.HD
lcd.FHD
lcd.LCD_GESTURE_MOVE_UP
lcd.LCD_GESTURE_MOVE_LEFT
lcd.LCD_GESTURE_MOVE_DOWN
lcd.LCD_GESTURE_MOVE_RIGHT
lcd.LCD_GESTURE_ZOOM_IN
lcd.LCD_GESTURE_ZOOM_OUT
lcd.LCD_GESTURE_NONE
lcd.LCD_FLAG_PRESSED
lcd.LCD_FLAG_RELEASED
lcd.LCD_FLAG_MOVED
- 函数
fir
— 热成像扩展板驱动 (fir == 远红外线)tv
— tv shield drivercpufreq
— 简便cpu频率控制imu
— imu 传感器rpc
— rpc library- 如何使用库
- class rpc - rpc virtual class
- class rpc_master - rpc_master virtual class
- class rpc_slave - rpc_slave virtual class
- class rpc_can_master - CAN Master Interface
- class rpc_can_slave - CAN Slave Interface
- class rpc_i2c_master - I2C Master Interface
- class rpc_i2c_slave - I2C Slave Interface
- class rpc_spi_master - SPI Master Interface
- class rpc_spi_slave - SPI Slave Interface
- class rpc_uart_master - UART Master Interface
- class rpc_uart_slave - UART Slave Interface
- class rpc_usb_vcp_master - USB VCP Master Interface
- class rpc_usb_vcp_slave - USB VCP Slave Interface
- class rpc_wifi_master - WiFi Master Interface
- class rpc_wifi_master - WiFi Master Interface
omv
— OpenMV Cam 信息
OpenMV Cam上的第三方库¶
以下的第三方math库内置在您的OpenMV Cam固件中:
以下第三方驱动程序库内置在您的OpenMV Cam固件中:
以下第三方协议库内置在您的OpenMV Cam固件中: